C# 在不破坏LINQ/ADO.NET实体框架+;SQL Server

C# 在不破坏LINQ/ADO.NET实体框架+;SQL Server,c#,sql-server,entity-framework,linq,C#,Sql Server,Entity Framework,Linq,我正在使用LINQ/ADO.NET实体框架连接SQL Server 2016,我想在生产环境中对数据库进行模式更改。进行这些更改的方式是: 更改数据库中的架构 部署利用该软件的新版本 我想要避免的是在1完成后但在2发生之前的停机时间 在过去,有时我会遇到一些问题,更改模式会导致ADO.NET Entity Framework/LINQ死亡。它似乎在启动时进行某种模式验证。在过去,我相信这是在我从表中删除一个未使用的字段时发生的 所以我的问题是,对数据库进行哪些类型的模式更改是“安全的”和“不安全

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

  • 更改数据库中的架构
  • 部署利用该软件的新版本
  • 我想要避免的是在1完成后但在2发生之前的停机时间

    在过去,有时我会遇到一些问题,更改模式会导致ADO.NET Entity Framework/LINQ死亡。它似乎在启动时进行某种模式验证。在过去,我相信这是在我从表中删除一个未使用的字段时发生的


    所以我的问题是,对数据库进行哪些类型的模式更改是“安全的”和“不安全的”,这样它们就不会导致ADO.NET实体框架开始抛出错误?我是否可以在保证安全的情况下添加所需的尽可能多的字段和表?

    如果不使用EF迁移,EF将不会验证或修改数据库架构。EF总是生成具有显式列名的查询。只要不修改EF期望的表名和列名,或使任何EF实体的键属性非唯一EF就可以了