我已经在我的C#.NET应用程序中使用DataSets和TableAdapter一段时间了,我正在考虑切换到Entity Framework。像许多公司一样,我的公司使用开发服务器,测试服务器和生产服务器。使用DataSet,我可以通过编辑Project -> [project name here] Properties... -> Settings -> Connection string
下的连接字符串并编辑服务器信息来更改服务器。从我能够推断的有关Entity Framework的所有内容中,它使用位于 app.config 文件中的更静态的连接字符串。
有没有办法将实体框架附加到应用程序设置中的Connection字符串或使用代码编辑连接?
我在连接到服务器之前编写了以下代码来更改连接字符串,是否可以修改它以使用Entity Framework连接?
var config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
var connectionStringsSection = (ConnectionStringsSection)config.GetSection("connectionStrings");
connectionStringsSection.ConnectionStrings[1].ConnectionString = @"server connection goes here";
config.Save();
ConfigurationManager.RefreshSection("connectionStrings");
答案 0 :(得分:0)
DbContext - 负责访问EF中的数据的基类有一个构造函数,它接受一个DbConnection参数,可以设置经典的ConnectionString,你可以用你认为合适的任何方式构建它。 您可以在运行时构建它,或者在app.config中只有一个连接字符串,其中包含从DbContext派生的类的名称
http://msdn.microsoft.com/en-US/library/gg696604(v=vs.113).aspx
<add name="SuperDbContext" connectionString="lala"/>
public class SuperDbContext : DbContext
{
//code here
}