Usuário com melhor resposta
Erro ao acessor informações de configuração com WebConfigurationManager

Pergunta
-
Boa tarde pessoal,
Alguém pode me dar uma força, estou tentando pegar informações de conexão do meu arquivo Web.config usando o WebConfigurationManager, mas sempre retorna null. Na minha Classe estou usando a sequinte linha:
ConnectionStringSettings getString = WebConfigurationManager.ConnectionStrings["nwind"]
as ConnectionStringSettings;using (SqlConnection conn = new SqlConnection(getString.ConnectionString))
{
...No meu arquivo Web.config a seguinte:
<connectionStrings>
<add name="nwind" connectionString="Data Source=SERVIDOR;Initial Catalog=Northwind;Integrated Security=True"/>
</connectionStrings>
Respostas
-
-
Ele tem função de bloquear acesso direto as views
http://stackoverflow.com/questions/1355353/why-are-there-2-web-config-files
- Marcado como Resposta LWMN quarta-feira, 18 de junho de 2014 17:26
Todas as Respostas
-
-
Olá,
Tenta com ConfigurationManager
http://forums.asp.net/t/1638378.aspx?how+to+use+connectionstring+from+web+config+
http://weblog.kevinattard.com/2011/12/how-to-get-connection-string-from.html
Boa noite Welington, tentei esse também, mas não está funcionando. -
Olá,
Tenta com ConfigurationManager
http://forums.asp.net/t/1638378.aspx?how+to+use+connectionstring+from+web+config+
http://weblog.kevinattard.com/2011/12/how-to-get-connection-string-from.html
Boa noite Welington, tentei esse também, mas não está funcionando.
Na minha classe eu coloquei:
string getString = ConfigurationManager.AppSettings["nwind"];
E no Web.Config coloquei:
<appSettings>
<add key ="nwind" value="Data Source=SERVIDOR;Initial Catalog=Northwind;Integrated Security=True"/>
</appSettings>
Mesmo assim continua retornando null! Alguém sabe onde está o erro?
-
-
OLá,
Será que você está colocando no web.config certo. Coloca naquele na raiz do projeto. Outra coisa verifica se tem alguma código que limpa essas configurações ai. Tipo a tag CLEAR no próprio web.config
Bom dia Welington, eu já testei tudo, não sei se estou deixando passar alguma coisa. Troquei até o nome do servidor para (local), mas nada. Segue o código do meu Web.Config:<?xml version="1.0"?>
<?xml version="1.0"?>
<configuration>
<configSections>
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
</sectionGroup>
</configSections>
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Optimization"/>
<add namespace="System.Web.Routing" />
</namespaces>
</pages>
</system.web.webPages.razor>
<appSettings>
<add key="webpages:Enabled" value="false" />
<add key ="nwind" value="Data Source=(local);Initial Catalog=Northwind;Integrated Security=True"/>
</appSettings>
<system.web>
<httpHandlers>
<add path="*" verb="*" type="System.Web.HttpNotFoundHandler"/>
</httpHandlers>
<pages
validateRequest="false"
pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<controls>
<add assembly="System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" namespace="System.Web.Mvc" tagPrefix="mvc" />
</controls>
</pages>
</system.web>
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<handlers>
<remove name="BlockViewHandler"/>
<add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />
</handlers>
</system.webServer>
</configuration>
-
-
Você deve estar colocando no web.config que fica dentro da pasta views.
Coloca no web.config na raiz do projeto, caso não exista adiciona um.
Welington, funcionou, era isso mesmo. Então o webconfig que fica dentro da Views só tem a finalidade de atender as configurações das Views? -
Ele tem função de bloquear acesso direto as views
http://stackoverflow.com/questions/1355353/why-are-there-2-web-config-files
- Marcado como Resposta LWMN quarta-feira, 18 de junho de 2014 17:26
-
Ele tem função de bloquear acesso direto as views
http://stackoverflow.com/questions/1355353/why-are-there-2-web-config-files
Não sabia dessa importância.
Obrigado pelas orientações Welington!