C# 代码优先实体框架-更改连接字符串

C# 代码优先实体框架-更改连接字符串,c#,asp.net-mvc,entity-framework,ef-code-first,C#,Asp.net Mvc,Entity Framework,Ef Code First,如何更改代码优先实体框架/MVC应用程序中的连接字符串?我试图将其传输到一个实时站点,但它忽略了web配置值,仍然引用了我的本地版本的数据库 以下是my web.config的连接字符串部分: <add name="MembershipConnectionString" connectionString="Data Source=192.168.1.43;Initial Catalog=Website.Models.IntranetApplication;User Id=[UserName

如何更改代码优先实体框架/MVC应用程序中的连接字符串?我试图将其传输到一个实时站点,但它忽略了web配置值,仍然引用了我的本地版本的数据库

以下是my web.config的连接字符串部分:

<add name="MembershipConnectionString" connectionString="Data Source=192.168.1.43;Initial Catalog=Website.Models.IntranetApplication;User Id=[UserName];Password=[Password];timeout=30" />
<add name="WebsiteConnectionString" connectionString="Data Source=192.168.1.43;Initial Catalog=Website.Models.IntranetApplication;User Id=[UserName];Password=[Password];timeout=30" />
<add name="Entities" connectionString="metadata=res://*/Models.IntranetModel.csdl|res://*/Models.IntranetModel.ssdl|res://*/Models.IntranetModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=192.168.1.43;Initial Catalog=Website.Models.IntranetApplication;User Id=[UserName];Password=[Password];MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />

我不确定Entities字符串是否有任何相关性,因为我使用了Code First entity framework,我认为只有在尝试创建edmx文件时才会出现这种情况(尽管我最终只是删除了它)。实体连接字符串已被注释掉,因此我认为未使用它


我想让实体框架读取“WebsiteConnectionString”,但它似乎想使用本地连接字符串,但我甚至看不到该字符串的设置位置。如何更改它?

可以将连接字符串或其名称传递给
DbContext
的构造函数。如果使用默认构造函数,它将搜索与派生上下文类名称同名的连接字符串,如果找不到,它将使用以下连接字符串:

Data Source=.\SQLEXPRESS; Integrated Security=True; MultipleActiveResultSets=True

数据库名称与您的上下文类相同。

@ladislav mrnka我看到了您关于EF问题的许多答案,它们都非常有用。谢谢