Как заставить ADO.NET Entity Framework регенерировать код?

Я столкнулся с проблемой с моделью ADO.NET Entity Framework и службой данных ADO.NET, которая делает ее доступной. Модель и служба данных компилируются без каких-либо проблем или предупреждений, когда они выходят из-под контроля версий. Однако, когда я запускаю службу, я получаю следующую ошибку:  Ошибка запроса - сервер обнаружил ошибку при обработке запроса. Подробнее см. в журналах сервера.

К сожалению, нет журналов сервера (о которых я знаю), так как это сервер веб-разработки VS 2008, и на самом деле нет кода для отладки ... Путем проб и ошибок может показаться, что сгенерированный код (модель .Designer.cs) каким-то образом устарел. Если я выполняю какое-то тривиальное обновление EDM, которое заставляет его регенерировать файл кода, при повторном запуске службы все работает нормально.

Я попытался удалить файл model.designer.cs в надежде, что во время сборки построитель проекта / объекта обнаружит отсутствующий файл и восстановит его для меня. Этого не произошло ..... Кто-нибудь знает, как заставить этот код регенерировать? (Это также сделало бы меня немного счастливее, если бы мне не приходилось держать сгенерированный код под контролем источника.)

Спасибо


person Ken Henderson    schedule 23.01.2009    source источник


Ответы (2)


Щелкните правой кнопкой мыши файл EDMX и выберите «Запустить настраиваемый инструмент».

Существует также инструмент генерации кода командной строки под названием edmgen (доступный из командной строки VS).

person Andrew Peters    schedule 26.01.2009
comment
@ Андрей - Спасибо, я знал, что это что-то глупое, но я этого не видел. Позже мне пришло в голову, что мне нужно обновить конфигурацию MSBuild, чтобы это произошло. - person Ken Henderson; 26.01.2009
comment
Эндрю ... можешь мне сказать, как ты обновил MSBuild для запуска edmgen? Мне нужно сделать то же самое, чтобы не проверять файлы .designer в svn? - person PilotBob; 27.05.2010
comment
@PilotBob - см. Это stackoverflow.com/questions/2173298/ - person Andrew Peters; 27.05.2010
comment
@AndrewPeters, Run Custom Tool ничего не делает для меня: не могли бы вы сказать мне - почему? - person Aleksey Kontsevich; 08.06.2017

В Visual Studio 2017 похоже, что при сохранении файла .tt автоматически повторно запускается шаблон, обновляя файлы классов сущностей.

person Dov    schedule 05.06.2018
comment
@AlekseyKontsevich Думаю, это может быть то, что вы искали - person Dov; 05.06.2018
comment
Вы также можете сохранить файл .edmx - person Rob Scott; 11.09.2019