我目前正在尝试在SQL Server中创建一个具有EF代码优先权的表,我只有权在现有数据库中创建表。
我无法删除整个数据库。我尝试使用迁移update-table
让EF为我创建表,但因为__MigrationHistory
表已经存在(并且链接到不同的表),所以这不起作用。
有没有人能解决我的问题?
答案 0 :(得分:3)
您无需删除整个数据库,
添加新表的类,让我们说你的新表是" person"
public class Person
{
public int Id { get; set; }
public string Name { get; set; }
}
并将以下行添加到DbContext
public DbSet<Person> Persons { get; set; }
现在您需要将此表添加到现有数据库。最简单的方法是在Visual Studio中访问Nuget Package Manager控制台(工具 - &gt; Nuget包管理器 - &gt;包管理器控制台)
type Add-Migration AddedPersonTable
这将在迁移表
中创建一个新条目and then type Update-Database
这会将新人员表添加到现有数据库
阅读here了解有关迁移的更多信息。