c# - MVC C# 在不删除数据库的情况下更改数据库结构

标签 c# .net sql-server asp.net-mvc entity-framework

如果我将属性添加到类或将整个类添加到数据库文件中的 DbSet, Entity Framework 应相应地自动添加表列。这工作正常,但我的问题是删除整个数据库并重新创建它。

我使用的远程服务器不允许我通过 Visual Studio 重新创建数据库,如果我添加/更改类/属性,我必须手动创建一个全新的数据库。此外,它不会让我删除对数据库的引用,即使它在技术上已被删除,所以我必须将新数据库重命名为另一个名称。

有什么方法可以轻松更改数据库的结构而无需删除并重新创建它?

最佳答案

是的,有办法。使用 Entity Framework 迁移。从您的包管理器控制台开始执行:

Enable-Migrations

这是一个 article关于它的MSDN。仅当您使用 Entity Framework Code First 方法时,您才可以选择使用迁移。

EF 迁移的妙处在于,您可以启用自动迁移选项。基本上,您数据库中所有不会影响数据完整性或丢失的架构更改(例如添加列或新表)都可以自动推送,而无需显式实现迁移。

关于c# - MVC C# 在不删除数据库的情况下更改数据库结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36751485/

相关文章:

c# - 如何使用 ASP.NET 的 PARSE REST API 向特定设备发送通知?

sql - 从 VARCHAR 中提取数字

sql-server - 在 SQL Select 语句中读取 XML 值

sql - 用于两次更新和搜索查询的高效 SQL 查询

c# - 需要结合 WHERE、AND、OR 的 SQL 帮助

c# - F# 的通用成员约束是否可以在 C# 中使用?

sql - Dapper:过程或函数指定的参数太多

c# - ASP.NET 中的文本到语音 - 访问被拒绝......该怎么办?

c# - PrivateFontCollection.AddMemoryFont 是否适用于 WOFF 文件?

c# - 使用 dottrace 查找内存泄漏