Сбой VS2010, а затем перезапуск после изменения EDMX - PullRequest
0 голосов
/ 05 октября 2018

Я создал приложение RESTful, используя Entity Framework 5.1.Это было стабильно в течение длительного времени.Недавно я добавил таблицу в свою базу данных SQL 2005 и попытался добавить ее в файл edmx для проекта.Таблица отображается в конструкторе, но когда я сохраняю edmx, он вызывает остановку VS2010 и перезапуск.Когда он перезапускается, таблица находится в конструкторе, но в папке Model.tt нет шаблонов кода, и я получаю массу ошибок при перестройке проекта.

При перезапуске VS системное приложениеИсключение выдается devenv.exe.Первая пара строк:

Приложение: devenv.exe Framework Версия: v4.0.30319 Описание: Процесс был прерван из-за необработанного исключения.Исключение Info: System.AccessViolationException в EnvDTE.ProjectItem.get_FileNames (Int16) в Microsoft.VisualStudio.TextTemplating489EEB6F04CC6591BD374BC5954BE8E5.GeneratedTextTransformation + EntityFrameworkTemplateFileManager + VsEntityFrameworkTemplateFileManager.ProjectSync (EnvDTE.ProjectItem, System.Collections.Generic.IEnumerable`1)

1007 *

Удаление добавленной таблицы не решает проблему, только восстановление проекта из резервной копии предыдущей ночи дает мне чистые компиляции.

Кажется, что-то еще не так.Будем благодарны за любые подсказки или решения.

1 Ответ

0 голосов
/ 07 октября 2018

Я провел обширный поиск в Google по подобным проблемам, и, за исключением той, которая упоминалась в моем комментарии выше, ни одна из них не соответствует.Так как в последний раз я успешно добавлял таблицу, я установил расширения GitHub для VS2010.Взявшись за соломинку, удалил расширения, думая, что это могло вызвать проблему, но, увы, то же поведение продолжалось и после удаления.

Я создал новый, урезанный проект и попытался добавить одну таблицу в edmx.с теми же результатами VS2010 перезапустился с той же ошибкой в ​​журнале приложений Windows.После перезапуска VS2010 созданный файл .cs был указан в обозревателе решений в проекте, но он был затемнен, то есть не включен в проект.Если я включил его вручную и скомпилировал проект, все прошло хорошо.но файл .cs свободно перемещался в списке элементов проекта, а не в папке .tt.

Полагаю, я мог продолжить, но моя уверенность была поколеблена в целостности установки VS2010.

В отчаянии я решил сделать ремонтный ремонт VS2010 Premium.Это заняло около двух часов.Тем не менее, , которая устранила проблему .Теперь я могу добавить таблицы и сохранить emdx, чтобы класс .cs отображался в папке .tt.Все компилируется нормально.Похоже, я снова в деле.

...