我知道实体框架有数据库第一种方法。现在的问题是它是否可以为我生成DAL(数据访问层)代码(而不是模型)。
答案 0 :(得分:2)
使用对象关系映射器(ORM)时,通常不会有传统意义上的CRUD代码。相反,它将这些操作抽象为更面向对象的操作。
例如,您没有“插入”,您将模型类添加到表中,然后保存更改。 ORM自动生成使对象模型与数据模型匹配所需的SQL。
所以我的观点是,你的问题显示出对ORM如何工作以及它们与数据模型的关系的基本缺乏理解。你应该做一点阅读。
答案 1 :(得分:1)
我不确定你的“DAL代码”是什么意思,因为这是一个相当模糊的术语。我认为您的实体类型是DAL的一部分。
当您使用模型优先或数据库优先方法时,实体框架工具可以从模型.edmx自动生成上下文类,该类将继承自ObjectContext
。使用T4 templates定制生成的上下文类很容易,方法是找到一个已经从.edmx生成的在线类,并根据自己的喜好进行修改。
代码优先开发使用DbContext
,这通常不会自动生成。有关详细信息,请参阅Scott Gu博客上的this post。