C# 具有相同模型的多个数据源

C# 具有相同模型的多个数据源,c#,entity-framework,C#,Entity Framework,因此,我有几个数据库将包含同一个表的结构克隆,但是每个表将有不同的数据。因此,基本上模型保持不变,只有数据源根据用户或用户组而变化。有没有办法在web.config中为每个数据源添加连接,或者我有没有办法只传递服务器/数据库/usr/pw信息?根据要使用的数据源,您可以传递相应的连接字符串 var db1Context = new DataSourceEntities("data source one conn string"); var db2Context = new DataSourceE

因此,我有几个数据库将包含同一个表的结构克隆,但是每个表将有不同的数据。因此,基本上模型保持不变,只有数据源根据用户或用户组而变化。有没有办法在web.config中为每个数据源添加连接,或者我有没有办法只传递服务器/数据库/usr/pw信息?

根据要使用的数据源,您可以传递相应的连接字符串

var db1Context = new DataSourceEntities("data source one conn string");
var db2Context = new DataSourceEntities("data source two conn string");
现在,如果必须点击第一个数据源,可以使用
dbContext1

 dbContext1.TableName.AddObject(object);
第二个数据源也是如此

您可以在web.config中添加conn字符串,并按如下方式检索它们

var conn1 = ConfigurationManager.AppSettings["key1"].ToString();
var conn2 = ConfigurationManager.AppSettings["key2"].ToString();

您根本不必在web.config中存储连接字符串信息。就像3nigma的答案一样,您可以在代码中完成这一切。您只需将带有连接字符串信息的字符串直接传递给它。您可以使用
SqlConnectionStringBuilder
类来构建连接字符串,以简化此过程。

您的问题中没有与MVC相关的内容,我已对其进行了编辑,使其更为合适。