如何在DataContext中更改数据库名称

本文关键字:数据库 DataContext | 更新日期: 2023-09-27 17:50:51

我创建了与我的生产数据库良好工作的代码。但我想要简单的方法来更改数据库名称。它的方式将是没有进一步的行动,和代码复制。我该怎么做呢?

我有数据库"MyDB_1","MyDB_2"-它充满了用于测试的数据库副本,诸如此类。

通过ODBC更改连接的方法也很好。但我怎么能做到呢?

 DataTrackerClassesDataContext ctx = new DataTrackerClassesDataContext();
// !!! I cant change the property because it's readonly:
//ctx.Connection.Database = "MyDB_1";
//ctx.Connection.Database = "MyDB_2";
Console.WriteLine(ctx.Connection.Database);
var custQuery = 
    from m in ctx.models 
    where m.status == 1 
    select m.id;
foreach (int id in custQuery)
{
    Console.WriteLine("{0} ", id);
}

如何在DataContext中更改数据库名称

如果您想将数据库切换为数据上下文,那么在数据上下文的构造函数中您将输入新的连接字符串。

你可以这样做来保持格式:

string connectionString = 
        string.Format("Data Source={0};Initial Catalog={1};Integrated Security=True", 
                      serverName, 
                      dataBaseName);
DataTrackerClassesDataContext ctx = new DataTrackerClassesDataContext(connectionString);

您只需根据要使用的数据库替换连接字符串