Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

fagnerx21

Tá gerando exception e não sei como resolver !!!

Recommended Posts

Olá a todos, estou escrevendo um código para cifrar as minhas informações de conexão do arquivo web.config.

Quando testo o meu programa ele gera exception,vou postar o código e a img do exception:

 

Código:

 

HTML:

 

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

 

<html xmlns="http://www.w3.org/1999/xhtml" >

<head runat="server">

<title>Untitled Page</title>

</head>

<body>

<form id="form1" runat="server">

<div>

<span style="font-size: 25px; color: blue"><strong>Cifrando Informações<br />

<br />

</strong></span>

 

</div>

</form>

</body>

</html>

 

C#:

 

using System;

using System.Data;

using System.Configuration;

using System.Web;

using System.Web.Configuration;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Web.UI.HtmlControls;

 

public partial class _Default : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

CifrarStringConexao();

//DecifrarStringConexao();

}

public void CifrarStringConexao()

{

Configuration Config = WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath);

ConfigurationSection Section = Config.GetSection("cn");

 

if (!Section.SectionInformation.IsProtected)

{

Section.SectionInformation.ProtectSection("RsaProtectedConfigurationProvider");

//Também pode ser usado DataProtectionConfigurationProvider

Config.Save();

}

}

public void DecifrarStringConexao()

{

Configuration Config = WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath);

ConfigurationSection Section = Config.GetSection("cn");

 

if (Section.SectionInformation.IsProtected)

{

Section.SectionInformation.UnprotectSection();

Config.Save();

}

}

}

 

Web.Config:

 

<?xml version="1.0"?>

<!--

Note: As an alternative to hand editing this file you can use the

web admin tool to configure settings for your application. Use

the Website->Asp.Net Configuration option in Visual Studio.

A full list of settings and comments can be found in

machine.config.comments usually located in

\Windows\Microsoft.Net\Framework\v2.x\Config

-->

<configuration>

<appSettings/>

<connectionStrings>

<add name="cn" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\Northwind.mdb;Persist Security Info=True"

providerName="System.Data.OleDb" />

</connectionStrings>

<system.web>

<!--

Set compilation debug="true" to insert debugging

symbols into the compiled page. Because this

affects performance, set this value to true only

during development.

-->

<compilation debug="true"/>

<!--

The <authentication> section enables configuration

of the security authentication mode used by

ASP.NET to identify an incoming user.

-->

<authentication mode="Windows"/>

<!--

The <customErrors> section enables configuration

of what to do if/when an unhandled error occurs

during the execution of a request. Specifically,

it enables developers to configure html error pages

to be displayed in place of a error stack trace.

 

<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">

<error statusCode="403" redirect="NoAccess.htm" />

<error statusCode="404" redirect="FileNotFound.htm" />

</customErrors>

-->

</system.web>

</configuration>

Exception:

 

Imagem Postada

 

 

 

Por favor,me ajudem.

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa, cara nunca fiz isso, interessante, mas pelo erro é algum objeto que deve ser instanciado antes de utilizar, onde exatamente esta dando o erro ?

if (!Section.SectionInformation.IsProtected)

Compartilhar este post


Link para o post
Compartilhar em outros sites

fagnerx21 estranho, mas consegui fazer seu código funcionar, mude no Web.Config onde esta cn coloque clientesConnectionString e isso no seu código C# também, fiz teste com outros nomes como somente clientes e deu certo, somente o cn deu erro.

Estranho, mas funcionou. http://forum.imasters.com.br/public/style_emoticons/default/natal_dry.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu substitui em todos os cn's, mas continua dando exception, tipo, eu substitui em todos os cn's, dae rodei e deu um novo exception, mas no sqldatasource e grifado em verde, dae re-configurei o sqldatasource com o clientesConnectionString, dae rodei e deu o mesmo exception de antes.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.