我正在设想一个三层Web应用程序的设置,使用Linq to Entity的ADO.NET MVC 3.0。 Build是VS 2010,Server OS MS Server 2008,数据库MS Sql Server 2008.语言是C#或VB。
问题是如何在db和实体模型之间保持同步。与“典型”RDBMS-SQLClient方案相比,Linq变体似乎为这些DDL操作带来了大量开销。
可能,我只是遗漏了一些东西...... 史蒂夫
答案 0 :(得分:1)
根据您将遵循的架构,您可以获得所需的行为。
使用数据库第一模型,您必须通过设计器添加数据库中的表以及添加/重构列的表来维护模型类,更新dbml,然后为数据库生成更改脚本。
如果您创建Model第一个设计,则在设计器中创建所有模型类,然后生成脚本以创建数据库。
在我看来,目前最佳实践是你拥有完全控制权并且更加“面向开发人员”的方法是代码优先。以编程方式创建所有类,就像对待每个对象一样,创建一个库,使用流畅的API将类映射到所需的数据库(可以为不同的数据存储创建多个库),也可以为迁移进行迁移。因此,您可以使用“数据库无知”方式创建所有类,并通过迁移进行维护,或者通过比较工具(如Red Gate的SQL Compare)创建更改脚本。