首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >对不同的EntityFramework型号使用相同的连接字符串?

对不同的EntityFramework型号使用相同的连接字符串?
EN

Stack Overflow用户
提问于 2012-03-15 19:48:37
回答 3查看 1.4K关注 0票数 3

我从一个使用EF的MVC3应用程序开始。我们有一个超过200个表的数据库。我使用的是DBFirst方法。

我的想法是为应用程序中的不同区域创建一个EFModel,而不是将整个数据库模式放入一个大模型中。我现在遇到了一个问题,每个模型似乎都想要一个自己的连接字符串。我没有成功地更改为只有一个公共的connestionstring。这不应该是可能的吗?我在想,背景中的数据库是一样的,所以...

还是说我完全说错了?我应该将所有的表拖放到一个大模型中吗?或者接受我将获得大量连接字符串的事实?

有什么见解吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-03-15 20:01:15

您不能将一个EF连接字符串用于多个EDMX模型,因为EDMX metadata is part of the EF connection string

这对您来说应该不是问题,除非所有这些连接字符串都包含一个嵌入式DB连接字符串,并且您可能希望在一个位置而不是5个位置对其进行更改。但是,您可以在运行时使用EntityConnectionStringBuilder更新DB连接字符串部分。因此,您可以为DB连接使用“常规”(非EF )连接字符串,然后在创建上下文时使用EntityConnectionStringBuilder将其替换为EF连接字符串。

在我的脑海中,代码看起来像这样:

代码语言:javascript
运行
复制
var dbCS = ConfigurationManager.ConnectionStrings["DBConnectionString"].ConnectionString;
var model1CS = ConfigurationManager.ConnectionStrings["Model1ConnectionString"].ConnectionString;
var ecsb = new EntityConnectionStringBuilder(model1CS);
ecsb.ProviderConnectionString = dbCS;

return new Model1Entities(ecsb.ToString());
票数 1
EN

Stack Overflow用户

发布于 2012-03-15 19:52:58

也许你应该创建基本上下文,在那里你可以在web.config中硬编码连接字符串或它的名称。上下文父级可能只有al的一部分,甚至在父级上下文中描述一些常见的实体,您应该在每个子级中使用它们。

票数 0
EN

Stack Overflow用户

发布于 2012-03-16 03:24:23

为什么需要使用Entity Framework?也许EF对你来说不是正确的解决方案。

我建议你使用其他的对象模型,比如Simple.Data

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9719056

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档