我是Entity Framework的新手,想知道如何在代码中修改连接字符串。
这是我的代码
using (var context = new PushjobModel.PushjobEntities())
{
var list = context.GetAllActivePushjobs();
foreach (PushjobModel.Pushjob item in list)
{
item.IsActive = false;
item.IsSent = true;
}
context.SaveChanges();
}
我的ASP.NET webforms应用程序中有一个配置文件,其中包含100多个数据库的连接字符串列表。在我调用context.GetAllActivePushjobs();
之前,我想更改连接字符串。
使用旧的 ADO.NET 我已经使用了以下方法很长时间并且它运行良好
spPremisesReadTableAdapter taPremises = new spPremisesReadTableAdapter();
taPremises.Connection.ConnectionString = GetConnectionString(CompanyName);
taPremises.GetData();
...
public static void GetConnectionString(string CompanyName)
{
string connectionstring = System.Web.Configuration.WebConfigurationManager.ConnectionStrings[CompanyName].ConnectionString;
}
有人可以帮忙吗?
答案 0 :(得分:1)
我认为你要找的是班级EntityFrameworkConnectionStringBuilder
答案 1 :(得分:0)
您只需要为DbContext
的构造函数提供连接字符串条目的名称:
using (var context = new PushjobModel.PushjobEntities(name-of-connection-string-here))
{
.....
}
答案 2 :(得分:0)
可能你可以试试这个:
using (var context = new PushjobModel.PushjobEntities(GetConnectionString(CompanyName)))
{
var list = context.GetAllActivePushjobs();
foreach (PushjobModel.Pushjob item in list)
{
item.IsActive = false;
item.IsSent = true;
}
context.SaveChanges();
}
public static void GetConnectionString(string CompanyName)
{
string connectionstring = System.Web.Configuration.WebConfigurationManager.ConnectionStrings[CompanyName].ConnectionString;
}