Я использую 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();
}
}
Подробнее здесь: https://stackoverflow.com/questions/543 ... ded-or-not