是否可以在一个项目中从两个数据库中获得两个实体模型?

时间:2013-08-22 13:00:45

标签: c# .net entity-framework entity-model

我曾经有一个带有WCF服务的工作edmx模型。

然后我添加了另一个指向另一个连接的实体模型。

我将尝试简要解释app.config中发生了什么。

  • 仍有一个具有旧名称
  • 的connectionString
  • 但现在它指出了新的实体模型
  • 但初始目录甚至没有更新为新目录并指向旧目录

我确信这里出了点问题。我也找不到可以从属性中更改/编辑它。

是否可以在一个项目中拥有两个实体模型?如果是这样,那么在我的情况下可能会导致这样的事情呢?

2 个答案:

答案 0 :(得分:2)

我有一段时间similar problem,我在一个项目中有两个模型,最初工作正常。当我必须在两个模型中引用同一个表时,我的问题就开始了,特别是因为生成的POCO在同一个项目中。

最后,将两个edmx放在不同的项目中。 Julie Lerman在this tutorial中说这是一件非常好的事情。

答案 1 :(得分:0)

是的,你可以在一个项目中拥有许多.edmx模型;你需要做的是将每个 Model.tt 放在不同的项目中,并将它们从项目中删除.edmx模型。所以你有这样的事情:

- com.DataAccessLayer
- com.Entities.Model1
- com.Entities.Model2

如果要连接到不同的数据库,每个模型使用不同的连接字符串。

在这里,您可以找到如何从Model.edmx中分离Model.tt http://nullablecode.com/2013/09/splitting-entity-framework-model-classes-separate-projects/