Entity Framework 4.1: Первая ошибка кода: «модель, поддерживающая контекст, изменилась с момента создания базы данных» - PullRequest
0 голосов
/ 02 сентября 2011
  1. Я создаю базу данных через приложение «сначала код», сервер sql не содержит баз данных. Приложение работает нормально, создает базу данных и загружает данные, которые я определил в моем инициализаторе.

  2. служба, которую я использую, пытается добавить некоторые данные в базу данных в первый раз. я получаю ошибку:

Модель, поддерживающая контекст 'yyyContext', изменилась с момента создания базы данных. Либо удалите / обновите базу данных вручную, либо вызовите Database.SetInitializer с экземпляром IDatabaseInitializer. Например, стратегия DropCreateDatabaseIfModelChanges автоматически удалит и заново создаст базу данных и при необходимости заполнит ее новыми данными.

Не должно быть никаких изменений с момента создания базы данных и после запуска службы.

Я использую EF4.1, а база данных не существует, в отличие от вопросов с похожими заголовками:

Database.SetInitializer<YourContext>(null);

Это не решение для меня.

Любые идеи о том, что может быть не так, приветствуются.

1 Ответ

0 голосов
/ 05 сентября 2011

Doh!В данный момент выясняется, что служба не использовала ту же строку подключения, что и другое приложение.причина, по которой базы данных не выглядят одинаково, должна заключаться в том, что на ранних этапах разработки я запустил главное приложение без строки соединения, поэтому оно подготовило для себя базу данных локального экземпляра для использования.

Затем, когда я пытался использовать службу, она пыталась получить доступ к той же базе данных с более ранней версии, и с тех пор модель значительно изменилась.

Я указал строку подключения на правильную базу данныхи оттуда все заработало.

...