C# 如何使用CodeFirst.NETCore更新数据库
自学.Net核心web内容 我有一个模型,我已经成功地创建了我的数据库 现在,我将向模型/类添加一个新字段。我希望保留此表中的现有数据,因此不希望重新创建DB/表。如何更新数据库/表格> 我曾尝试在包管理控制台中使用“更新数据库”,但出现错误,告知我的表已存在。我知道是这样的。但我不是在创造 这是我的模型:C# 如何使用CodeFirst.NETCore更新数据库,c#,entity-framework,asp.net-core,ef-code-first,C#,Entity Framework,Asp.net Core,Ef Code First,自学.Net核心web内容 我有一个模型,我已经成功地创建了我的数据库 现在,我将向模型/类添加一个新字段。我希望保留此表中的现有数据,因此不希望重新创建DB/表。如何更新数据库/表格> 我曾尝试在包管理控制台中使用“更新数据库”,但出现错误,告知我的表已存在。我知道是这样的。但我不是在创造 这是我的模型: public class Subscription { [Key] [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public class Subscription
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public long SubscriptionId { get; set; }
public string SubscriptionRef { get; set; }
public string CompanyName { get; set; }
public string EmailAddress { get; set; }
public string Salt { get; set; }
public string Key { get; set; }
public bool Disabled { get; set; }
public DateTime DOE { get; set; }
}
这是我的dbinitializer
public class DbInitializer
{
public static void Initialize(WorkerContext context)
{
context.Database.EnsureCreated();
context.SaveChanges();
}
}
这是我的startup.cs调用的
public void ConfigureServices(IServiceCollection services)
{
// Add framework services.
services.AddDbContext<WorkerContext>(options =>
options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));
services.AddMvc();
}
我重新运行项目(我也输入更新数据库),并且没有创建新字段
如何使用代码优先技术更新/编辑/修改/删除表和字段
谢谢您必须使用:
dotnet ef migrations add "MigrationName" -c ContextName
dotnet ef database update -c ContextName
为了消除移民问题:
dotnet ef migrations remove
这将删除最新的迁移您需要进一步了解如何删除。您好,感谢您的链接。好的you@FedericoDipuma我本来会删除这个问题,因为它现在看起来很明显,但是有人提供了错误的答案。请在这里写下错误。第一行应该是
dotnet ef migrations add“MigrationName”-c“ContextName”
dotnet ef migrations add "MigrationName" -c ContextName
dotnet ef database update -c ContextName
dotnet ef migrations remove