Обновление модели EF: таблицы отсутствуют - PullRequest
2 голосов
/ 06 мая 2011

У меня есть модель данных Entity Framework (3.5), указывающая на удаленную БД SQL Server 2005. Я добавил несколько полей в таблицу в БД и хотел обновить модель. Насколько я понимаю, обновление не работает, и вам нужно удалить и повторно добавить таблицу, но когда я удалил ее, а затем перешел к «Обновить модель из базы данных», таблицы не было в списке!

Если я добавлю НОВУЮ таблицу в БД, она появится в списке, но если я попытаюсь удалить, а затем повторно добавить ее, ее там нет! Я делал это много раз в других проектах, и я не могу понять, почему это не работает с этим.

Есть идеи?

Ответы [ 2 ]

8 голосов
/ 06 мая 2011

Если вы откроете Браузер модели для модели, есть два раздела: Модель и Магазин. Я знаю, что у нас была проблема с удалением объекта из модели, но его определение все равно будет в магазине. В этот момент каждый раз, когда мы обновляли EF, он обновлял определение в магазине, но не регенерировал часть в модели, поэтому казалось бы, что она вообще не была импортирована (в основном это квази-существование, это звучит как вы) застрял в). Убедитесь, что он удален из обоих мест через Visual Studio, а затем повторно обновите его, что должно заставить EF рассматривать его как новый объект и создавать объекты для обоих разделов.

Вторым (и более болезненным) решением было бы открыть файл XML для модели и найти имена сущностей, а затем удалить соответствующие объекты. Это немного сложнее, и, к сожалению, я слишком долго не мог точно дать вам инструкции о том, как не выстрелить себе в ногу.

0 голосов
/ 03 ноября 2017

Вы должны удалить таблицу из модели в конструкторе, а затем повторно добавить таблицу.

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