Ответ 1
Если это ошибка с файлом edmx, находящимся в папке, теперь она исправлена - загрузите и установите VS 2012 Update 1. Вы можете получить ее от: http://www.microsoft.com/visualstudio/eng/downloads#d-visual-studio-2012-update
Если какие-либо изменения в моей модели EF 5.0, VS, похоже, не видит изменений. Я попытался добавить новую таблицу, которая хорошо отображается в модели, но если я попытаюсь ее использовать где-то, таблица не будет отображаться в intellisense, и я не могу ее использовать.
Я также попытался изменить типы данных в столбце, который снова выглядит отлично, если я смотрю на файл модели .edmx, но визуальная студия все равно даст мне ошибки компилятора в этом поле, потому что я пытаюсь назначить неправильный тип данных.
Если я полностью удалю EDMX и заново создаю его, изменения будут работать нормально. но утомительно регенерировать из базы данных каждый раз, когда я должен быть в состоянии просто "обновить модель из базы данных" и перестроить.
Раньше у меня никогда не было таких проблем с EF. Кто-нибудь знает причину или исправить эту проблему?
Спасибо.
Если это ошибка с файлом edmx, находящимся в папке, теперь она исправлена - загрузите и установите VS 2012 Update 1. Вы можете получить ее от: http://www.microsoft.com/visualstudio/eng/downloads#d-visual-studio-2012-update
Сначала создайте свой проект и, если он был успешным, щелкните правой кнопкой мыши файл "model.tt" и выберите "Запустить пользовательский инструмент". Это исправит это.
Снова создайте свой проект и укажите "model.context.tt" запустить пользовательский инструмент. это обновит списки DbSet.
Это, по-видимому, ошибка в Entity Framework, что модель не обновляется, когда ваш файл Edmx находится внутри папки. Обходные пути, доступные на данный момент:
Надеюсь, что кто-то поможет.
Ссылка: http://thedatafarm.com/blog/data-access/watch-out-for-vs2012-edmx-code-generation-special-case/
У меня также была эта проблема, однако, щелчок правой кнопкой мыши по файлу model.tt и запуск "Custom tool" для меня не меняли, но комментарий на странице Ghlouw, связанный с упомянутым, чтобы использовать меню item "BUILD > Преобразование всех шаблонов T4." который сделал это для меня
У вас должен быть файл <XXX>Model.tt
где-нибудь, который является шаблоном T4, который генерирует ваши классы моделей.
Если он находится в другом проекте, он не будет обновляться при сохранении файла edmx.
В любом случае попробуйте щелкнуть его правой кнопкой мыши в обозревателе решений и выбрать Run Custom Tool
Щелкните правой кнопкой .tt
файл .tt
и выберите "Запустить пользовательский инструмент", который должен обновить его:
Я искал этот ответ, потому что у меня была аналогичная ситуация в VS2013. В моем случае я обнаружил, что простой "Clean Solution
" очистил все старые определения.
Вы работаете в проекте N-Tiered? Если это так, попробуйте перестроить свой уровень данных (или везде, где хранится ваш файл EDMX), прежде чем использовать его.
Я также столкнулся с этой проблемой ни с одним из классов, сгенерированных в файле model.tt. В моем случае это было связано с проблемами с тем, как я построил БД в SQL2012. Я бы установил столбец в таблице для nullable, который также был внешним ключом, и хотя я думаю, что вы должны это сделать, это вызвало проблему в EF5.
Как только это будет очищено, а диаграмма обновлена из базы данных, они снова появятся.
EF5 VS2013