C#LINQ&;部署后添加数据库

C#LINQ&;部署后添加数据库,c#,asp.net,linq,linq-to-sql,C#,Asp.net,Linq,Linq To Sql,我目前正在开发一个类似于Steamworks的Web应用程序(如果你不知道它是什么,它是一个用于存储成就、统计数据等的游戏服务) 我在开发过程中遇到的主要问题是,在部署应用程序后,为游戏添加了新的数据库。我使用LINQtoSQL适当地查询数据库,但是主要的问题是,由于在部署应用程序后创建了需要查询的其他数据库,我不确定如何使用LINQ构造来自不同数据库的查询 不可能添加新的DataContext、重新编译并重新部署应用程序。我曾想过通过插件结构来实现这一点,但它不起作用,因为DataContex

我目前正在开发一个类似于Steamworks的Web应用程序(如果你不知道它是什么,它是一个用于存储成就、统计数据等的游戏服务)

我在开发过程中遇到的主要问题是,在部署应用程序后,为游戏添加了新的数据库。我使用LINQtoSQL适当地查询数据库,但是主要的问题是,由于在部署应用程序后创建了需要查询的其他数据库,我不确定如何使用LINQ构造来自不同数据库的查询

不可能添加新的DataContext、重新编译并重新部署应用程序。我曾想过通过插件结构来实现这一点,但它不起作用,因为DataContext包含对列名等的引用


有人对如何克服这个问题有什么建议吗?我总是可以回到传统的SQL查询,但我不希望这样。每个数据库中的所有列名和结构都是相同的,主要问题是添加新数据库并让应用程序使用它们。

如果每个数据库中的所有列名和结构都是相同的,那么您可以在DataContext的构造函数中替换连接字符串,如下所示:

旧版本:

public DatabaseDataContext() : base("...your connection string...", mappingSource)
{
    OnCreated();
}
新版本:

public DatabaseDataContext() : base(Configuration.ConnectionString, mappingSource)
{
    OnCreated();
}
然后将所有连接字符串保存在外部文件/数据库表中,并获取所需的连接字符串或循环使用它们。:)


希望我能理解你的问题。

谢谢你的快速回复,我会试一试的。这似乎就是我要找的。