是否可以让我的ASP Core Web API确保使用EF Core将数据库迁移到最新的迁移?我知道这可以通过命令行完成,但我想以编程方式进行.
更新
根据Janshair Khan的答案,我想出了这个帮手班:
using Microsoft.AspNetCore.Builder; using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.DependencyInjection; using MyWebApi.Models; namespace MyWebApi { public static class DataSeeder { public static void SeedData(this IApplicationBuilder app) { var context = app.ApplicationServices.GetService<MyContext>(); if (!context.Database.EnsureCreated()) context.Database.Migrate(); } } }
您可以从Startup.cs中的Configure方法调用此命令,如下所示:
app.SeedData();
解决方法
您可以使用
db.Database.EnsureCreated();
使您的数据库更新您当前的模型.如果要启用迁移(如果怀疑后续迁移),则使用
db.Database.Migrate();
并随着时间推移您的后续迁移.