ASP - Core Migrate EF Core SQL DB при запуске
Возможно ли, чтобы мой 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();
}
}
}
Вы можете позвонить изConfigure
метод в вашемStartup.cs
как это:
app.SeedData();