0

我正在想象一个三层 Web 应用程序的设置,MVC 3.0 和 ADO.NET 使用 Linq to Entity。构建是 VS 2010,服务器操作系统 MS Server 2008,数据库 MS Sql Server 2008。语言是 C# 或 VB。

  1. 向数据库中的表添加列的首选机制是什么?
  2. 重构表中的列类型的最佳机制是什么?

问题是关于保持数据库和实体模型之间的同步。与“典型的”RDBMS-SQLClient 方案相比,Linq 变体似乎为这些 DDL 操作带来了很多开销。

可能,我只是错过了一些东西......史蒂夫

4

1 回答 1

1

根据您将遵循的架构,您可以获得所需的行为。

使用数据库优先模型,您必须通过设计器从数据库中添加表来维护您的模型类,这就是您添加/重构列的地方,更新 dbml,然后为您的数据库生成更改脚本。

如果您创建模型优先设计,那么您将在设计器中创建所有模型类,然后生成一个脚本来创建数据库。

在我看来,目前你可以完全控制并且更面向“开发人员”的方法的最佳实践是代码优先。像每个对象一样以编程方式创建所有类,创建一个库以使用 fluent API 将您的类映射到所需的数据库(您可以为不同的数据存储创建多个库),您还可以迁移您的更改。因此,您可以使用“数据库无知”的方式创建所有类并通过迁移进行维护,或者仅通过 Red Gate 的 SQL 比较等比较工具创建更改脚本。

于 2012-05-16T06:01:29.123 回答