<分区>
我和我的团队将开始一个新项目,我们正处于探索和测试一些新(或不太新)技术的阶段。
直到今天,我们一直在使用带有 DBDataReader 的经典 ADO、用于延迟加载的代理,在某些情况下还使用 DataTable。
该团队由 3 名开发人员和一名数据库设计师组成。 我们的项目每个至少包含 130 个表。
我们的新项目有发展潜力,因此我们预计肯定会有 100 张 table 。
过去 2 天我一直在阅读 EF5 并对其进行一些简单测试,但我仍然无法决定是否应该使用它。
- 我们通常将一个大项目拆分成许多“模块”项目,以便我们在源代码控制下更快更好地工作。我们要为整个数据库使用一个大的“edmx”吗?
- 由于我们有一个数据库设计器,我怀疑 CodeFirst 不是一个选项。那么将 EF 与数据库优先方法一起使用是否值得?
- 如果我们使用数据库优先方法,EF 是否足够智能以正确检测所有关系并准备好使用而无需我进行更多额外配置? (通过额外的配置,我的意思是我将不得不编写 DataAnnotations 或必须 ovveride DbContext)
- 就我个人而言,我发现自己对使用 sql 设计数据库非常有信心。我唯一的烦恼是,当我的类列表中的实体发生更改时,我必须更新所有选择、删除、更新、插入脚本。 EF 会帮我解决这个问题,但除此之外,我开始相信它会降低性能并最终降低我的生产速度,因为我们不熟悉它..
您认为它值得吗?
*除了 DataAnnotations 和 DbContext ovveride,是否有人使用普通 T4 模板来创建表(模式)?