繁体   English   中英

如何在Application Start上更改Entity Framework 5中的ConnectionString

[英]How to Change the ConnectionString in Entity Framework 5 on Application Start

我在ASP.NET Web Forms应用程序(4.5)上使用EF5数据库优先使用测试和prod数据库服务器(相同的模式)。 有没有办法在global.asax的Application_Start中动态设置目标连接字符串? 因此,当我在测试服务器上时,使用“test”连接字符串,当我在prod服务器上时,使用“prod”连接字符串。

您是否看过http://msdn.microsoft.com/en-us/library/gg679467%28v=vs.103%29.aspx DbContext(字符串连接)?

ObjectContext: http//msdn.microsoft.com/en-us/library/bb739017.aspx

请记住,ObjectContext的连接字符串不是经典连接字符串,而是更复杂的EF连接字符串。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <connectionStrings>
    <add name="Database1Entities" 
         connectionString="metadata=res://*/Model1.csdl
|res://*/Model1.ssdl
|res://*/Model1.msl;
provider=System.Data.SqlClient;provider connection string="
Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database1.mdf;
Integrated Security=True;
User Instance=True;
MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />
  </connectionStrings>
</configuration>

另请参见http://msdn.microsoft.com/en-us/library/system.data.entityclient.entityconnection.aspx 使用实体连接,您可以基于已有的经典DbConnection创建ObjectContext。

希望这有助于其他人 - 但看起来我们将能够通过以下示例找到一种方法: https//stackoverflow.com/a/8240733/448704

对于这些任务,我建议使用VS工具内置。 使用它们Visual Studio将根据您要发布的服务器自动切换配置(不仅是连接字符串)。 查看此链接以获取更多信息: Web Deployment Made Awesome

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM