Включить миграцию Entity Framework в Mono

entity-framework-6 mono xamarin

Вопрос

Я начал создавать проект ASP.NET MVC3 в Mac OS с помощью Xamarin Studio. Теперь я хочу добавить в проект новые свойства и модели, но я не могу на всю жизнь разобраться, как запустить консоль диспетчера пакетов Nuget, чтобы запустить команду Enable-Migrations.

Я слишком много спрашиваю? Возможно ли это, или мне нужно вернуться в Visual Studio в Windows?

Принятый ответ

Все команды Entity Framework Migrations - это всего лишь тонкие обертки над базовым API. Чтобы включить миграцию, просто создайте новый класс, который происходит из DbMigrationsConfiguration<TContext> в вашем проекте.

Для Add-Migration используйте код, похожий на следующий.

var config = new MyMigrationsConfiguration();
var scaffolder = new MigrationScaffolder(config);
var migration = scaffolder.Scaffold("Migration1");

File.WriteAllText(migration.MigrationId + ".cs", migration.UserCode);

File.WriteAllText(migration.MigrationId + ".Designer.cs", migration.DesignerCode);

using (var writer = new ResXResourceWriter(migration.MigrationId + ".resx"))
{
    foreach (var resource in migration.Resources)
    {
        writer.AddResource(resource.Key, resource.Value);
    }
}

Для Update-Database см. « Выполнение и сценарии миграции из кода » Роуном Миллером.



Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему
Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему