3

我有多个应用程序都共享一些表(如地址、公司等),但还有一些特定于产品的附加表(比如人员)。这一切都在数据库优先策略中。

我希望能够将实体框架从“核心”库(具有地址和公司)生成的类与产品(具有人员)共享。这是为了避免定义重复的类。

我知道我可以通过一个包含多个上下文的存储库来掩盖所有这些,但这不允许一个关键的事情(据我所知),即从核心模式自动填充外键(IE:填充和查询人事公司)。我可以扩展 Personnel 类(通过部分或使用扩展方法)以从 CompanyID 列填充公司,但这不会持久化,这意味着每次访问都会非常昂贵(除非我做错了什么?)

到目前为止,我已经阅读了几乎所有我能想到的关于 DBContext 的内容,包括从 Core DBContext 派生产品的 DBContext(通过更改 t4 模板),并希望它能神奇地设置值(遗憾的是,它没有)。真的,我希望我可以将 T4​​ 模板指向两个 EDMX,让它们神奇地工作,但我认为这不太可能。

4

0 回答 0