【发布时间】:2012-04-03 04:18:41
【问题描述】:
我正在尝试通过开发一个小项目来学习 ASP.NET MVC + Entity Framework。我已经根据需要创建了数据库的基本结构,现在正在尝试将数据库连接到 MVC 项目。
当我查看一些 MVC EF 教程时,有两种方法可以创建实体类来映射数据库(据我了解):
- 使用现有数据库创建 EDMX 文件
- 根据需要手动创建实体类
我需要澄清的是,使用这些方法是否有任何区别(限制、优点或缺点)?
对不起,如果我问的是非常简单或不相关的问题......
【问题讨论】:
-
你是这个意思? stackoverflow.com/questions/5446316/…。此外,正如公认的答案所解释的那样,技术上有 3 种方法
-
@PinnyM 感谢您的链接。我想我正在做的是“数据库优先”,那么如果我手动创建实体怎么办,是否没有必要?如果我创建 EDMX 文件,我可以将业务逻辑添加到 VS 生成的相同类中吗?
-
您可以手动创建实体,当然。但是你为什么要这样做而不是使用生成的部分类呢?并且修改生成的类通常是一个坏主意,因为您不能在修改数据库时安全地重新生成它们。您可以为您的业务逻辑创建自定义 T4 模板或部分类。顺便说一句,上面的链接涉及所有这些......