У меня есть проект, над которым я работаю. Пока я кодировал его, я создал базу данных на локальном SQL-сервере на моей машине. Теперь мне нужно привести его в действие, и я не могу заставить миграции создавать все, что не пусто.Создание новой миграции со всей структурой таблицы для новой базы данных
Вот моя старая строка подключения:
<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=helpdesk;Integrated Security=True" providerName="System.Data.SqlClient" />
Я изменил его в этом:
<add name="DefaultConnection" connectionString="Server=SQL50;Database=HelpDesk;Trusted_Connection=true;" providerName="System.Data.SqlClient" />
Я пытался из этого потока (Reset Entity-Framework Migrations):
- Удаление миграции в вашем проекте
- Удалить t он __MigrationHistory-таблица в вашей базе данных (может быть в системных таблицах). Однако это не имеет смысла, потому что это новая база данных и, следовательно, пока не переносится.
Всякий раз, когда я пытаюсь создать новую миграцию это то, что я получаю:
public partial class Initial : DbMigration
{
public override void Up()
{
}
public override void Down()
{
}
}
Я нашел эту ссылку о Инициализаторах как предложил Стив Грин ниже (http://www.codeguru.com/csharp/article.php/c19999/Understanding-Database-Initializers-in-Entity-Framework-Code-First.htm)
и предлагает использовать эта строка кода:
Database.SetInitializer(new DropCreateDatabaseAlways<BlogContext>());
В основном методе. Однако у меня нет основного метода или любого метода, подобного этому вообще.
На что у вас установлен инициализатор? –
@SteveGreene извините, но что такое инициализатор? – djblois
Определяет, если и когда EF создает новую базу данных. http://www.entityframeworktutorial.net/code-first/database-initialization-strategy-in-code-first.aspx –