在不使 LINQ/ADO.NET Entity Framework + SQL Server 崩溃的情况下可以安全地进行



我正在使用 LINQ/ADO.NET 实体框架连接到 SQL Server 2016,我想在生产环境中对我的数据库进行架构更改。 进行这些更改的方式是:

  1. 更改数据库中的架构
  2. 部署利用它的新版本软件

我想避免的是 1 完成后但在 2 发生之前停机。

过去,有时我会遇到更改架构会导致实体框架/LINQ 死亡 ADO.NET 问题。 它似乎在启动时进行了某种类型的架构验证。 过去,我相信当我从表中删除未使用的字段时,就会发生这种情况。

所以我的问题是,在数据库上进行哪些类型的架构更改是"安全"和"不安全"的,这样它们不会导致实体框架开始抛出错误 ADO.NET 这样它们? 我可以添加任意数量的字段和表,并保证安全吗?

假设不使用 EF 迁移,EF 不会验证或修改数据库架构。 EF 始终使用显式列名生成查询。 只要不修改 EF 期望的表和列名称,或者使任何 EF 实体的键属性不唯一 EF

就可以了。

最新更新