用于EF的Azure网站连接字符串未被拾取 [英] Azure Web Sites connection string for EF not being picked up

查看:176
本文介绍了用于EF的Azure网站连接字符串未被拾取的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



该网站使用实体框架,当我在 Web.config 它运行正常:

 < connectionStrings> 
< add name =DataContextconnectionString =metadata = res://*/Models.WpsData.csdl | res://*/Models.WpsData.ssdl | res://*/Models.WpsData .msl; provider = System.Data.SqlClient; provider connection string =& quot; data source = XXXX; initial catalog = XXXX; persist security info = True; user id = XXXX; password = XXXX; multipleactiveresultsets = True; =&的EntityFramework放大器; QUOT; providerName =System.Data.EntityClient/>
< / connectionStrings>

但是,如果删除此连接字符串,而是通过Azure管理门户指定,则会发生错误。

 名称:DataContext 
值:metadata = res:// * / Models。 WpsData.csdl | res://*/Models.WpsData.ssdl | res://*/Models.WpsData.msl; provider = System.Data.SqlClient; provider connection string =data source = XXXX; initial catalog = XXXX ; persist security info = True; user id = XXXX; password = XXXX; multipleactiveresultsets = True;应用程序名称= EntityFramework
类型:自定义

这将导致错误:在应用程序配置文件中找不到名为DataContext的连接字符串。

解决方案

请参阅类似的问题



尝试将web.config中的连接字符串保留一些值(一些测试连接字符串或一些虚拟值),例如

 < connectionStrings> 
< add name =DataContextconnectionString =dummyproviderName =System.Data.EntityClient/>
< / connectionStrings>


I am deploying an ASP.NET web app to Azure Web Sites.

The site uses Entity Framework, and when I include the following in Web.config it runs fine:

<connectionStrings>
  <add name="DataContext" connectionString="metadata=res://*/Models.WpsData.csdl|res://*/Models.WpsData.ssdl|res://*/Models.WpsData.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=XXXX;initial catalog=XXXX;persist security info=True;user id=XXXX;password=XXXX;multipleactiveresultsets=True;application name=EntityFramework&quot;" providerName="System.Data.EntityClient" />
</connectionStrings>

However, if this connection string is removed and instead specified via the Azure Management Portal, an error occurs.

Name:  DataContext
Value: metadata=res://*/Models.WpsData.csdl|res://*/Models.WpsData.ssdl|res://*/Models.WpsData.msl;provider=System.Data.SqlClient;provider connection string="data source=XXXX;initial catalog=XXXX;persist security info=True;user id=XXXX;password=XXXX;multipleactiveresultsets=True;application name=EntityFramework"
Type:  Custom

This results in the error: No connection string named 'DataContext' could be found in the application config file.

解决方案

See similar question here.

Try leaving the connection string in web.config with some value (either some test connection string, or some dummy value) e.g.

<connectionStrings>
  <add name="DataContext" connectionString="dummy" providerName="System.Data.EntityClient" />
</connectionStrings>

这篇关于用于EF的Azure网站连接字符串未被拾取的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆