我有一个包含三个edmx文件的dot net 4.0 DAL库项目。我选择将我的数据模型拆分为三个文件,因为我的数据库中有很多表,而且我在Stackoverflow上看到的内容似乎是最佳实践。
但是现在我的App.config中有三个连接字符串条目,基本上使用相同的数据库连接。我可以以某种方式回到旧的ado.net样式,我的配置文件中只有一个连接字符串吗?
谢谢, Jens
答案 0 :(得分:1)
在您的代码中,您可以使用EntityConnectionStringBuilder从存储在配置文件中的“常规”连接字符串构建三个单独的连接字符串。
你会得到类似的东西:
string providerString = <load your connection string>;
// Initialize the EntityConnectionStringBuilder.
EntityConnectionStringBuilder entityBuilder =
new EntityConnectionStringBuilder();
//Set the provider name.
entityBuilder.Provider = providerName;
// Set the provider-specific connection string.
entityBuilder.ProviderConnectionString = providerString;
// Set the Metadata location.
entityBuilder.Metadata = @"res://*/AdventureWorksModel.csdl|
res://*/AdventureWorksModel.ssdl|
res://*/AdventureWorksModel.msl";
您可以创建三个EntityConnectionStrings,并在每个上更改MetaData属性以指向您的模型。
但请注意,这会导致代码中连接字符串的硬编码部分。