在不同客户端之间重用代码优先模型

时间:2012-05-16 15:50:56

标签: entity-framework ef-code-first

我有一个代码第一个模型,我正在项目中使用。但现在我有其他项目将使用相同的模型。当然,我不想在所有项目中复制模型,因此我们的想法是将模型封装在单独的程序集中。到目前为止一直很好,直到你也想要“增强”某个项目的模型,比如添加一个特定参数的ctor。

使用分部类不起作用,因为它需要属于同一个程序集。使用继承并不真正起作用,因为模型的实体具有ICollection给其他实体,所以如何使这个工作?我正朝着正确的方向前进吗?

不确定我很清楚,所以请耐心等待; - )

1 个答案:

答案 0 :(得分:1)

如果您需要共享模型,则确实需要将其放在单独的程序集中,并且此程序集必须包含所有项目中所需的所有内容。因此,如果您需要其他构造函数,则必须将该构造函数添加到共享程序集中。如果您不想影响依赖于该程序集的其他项目,则必须增加共享程序集的版本(并使用强名称)。