我正在尝试在 Microsoft 的以下文档的帮助下使用“数据库优先”来实现 EF TPH,
http://msdn.microsoft.com/en-us/data/jj618292.aspx
我确实理解这是如何工作的,但它的完成方式听起来有点天真,或者我错过了一些我希望有人能启发我的东西。
据我了解,实施数据库优先方法的全部意义在于,当您有一个预先存在的数据库时,或者如果您更喜欢直接在数据库上进行工作并逐步向上工作,但是,本文档建议继承表(学生,讲师)旨在使用基类上的一个字段在 EF 设计区域创建,他们称之为“鉴别器”字段,您的继承实体最终指向该字段。
但是,我的问题是,为什么您必须在 ER 设计器中创建这些继承的表,您最初打算在其中直接创建表结构,然后再逐步构建实体框架,以及您在 ER 设计器上应用的这种更改将如何(添加继承的表)被映射到后端数据库,当我想稍后对我的数据库进行更改时,我必须在哪里进行这些更改(在 MS SQL 或 ER 上设计师)。如果我最终从 ER 端添加表,那么这将大大违背“数据库优先”方法的目的,因为我基本上最终使用了“模型优先”方法中的过程,这根本没有意义.
非常感谢您帮助解决这个问题。
请注意:我宁愿一切都在我的数据库中完成,而不是使用“模型优先”的方法。我有兴趣实现 TPH 并能够直接对我的数据库进行任何更改并将这些更改映射到我的 EF 子层(而不是相反)。
非常感谢