Я использую Entity Framework Core в приложении Xamarin.iOS.
В моем основном проекте, который содержит код (.netstandard 2.0), который используется совместно для приложения iOS и других приложений, я хотел бы знать, нужна ли миграция, чтобы я мог выполнять и некоторые другие операции.
Вот контекст:
public void Initialize()
{
using (var dbContext = new MyDbContext(m_dbContextOptions))
{
--> bool isNeeded = demoTapeDbContext.Database.IsMigrationNeeded()
demoTapeDbContext.Database.Migrate();
}
}
Самое близкое, что я нашел, - это вызов метода GetPendingMigrationsAsync()
и проверка количества ожидающих миграций, но я не уверен, является ли это самым безопасным способомсделать такую проверку в Entity Framework:
public async Task InitializeAsync()
{
using (var dbContext = new MyDbContext(m_dbContextOptions))
{
bool isMigrationNeeded = (await demoTapeDbContext.Database.GetPendingMigrationsAsync()).Any();
demoTapeDbContext.Database.Migrate();
}
}