Entity Framework не генерирует классы базы данных - PullRequest
0 голосов
/ 22 мая 2019

Используя Visual Studio 2019, я недавно обновил все свои пакеты NuGet, поэтому я вижу, что EntityFramework теперь отображается как 6.2.0. Мой проект представляет собой решение Web API 2. Когда я открываю свою модель базы данных и щелкаю правой кнопкой мыши по Обновить модель из базы данных , я могу выбрать новые таблицы, но когда я сохраняю файл edmx, он немедленно закрывается. Раньше он работал некоторое время, пока писал новые файлы.

Например, в самом файле .edmx я вижу эту запись для моей недавно добавленной таблицы:

<EntityType Name="Audit_Log">
  <Key>
    <PropertyRef Name="id" />
  </Key>
  <Property Name="id" Type="int" StoreGeneratedPattern="Identity" Nullable="false" />
  <Property Name="Lab_Space_Id" Type="int" Nullable="false" />
  <Property Name="Field" Type="varchar" MaxLength="80" Nullable="false" />
  <Property Name="Old_Value" Type="varchar" MaxLength="1000" />
  <Property Name="New_Value" Type="varchar" MaxLength="1000" />
  <Property Name="Modified" Type="datetime2" Precision="7" Nullable="false" />
  <Property Name="Updater" Type="int" Nullable="false" />
</EntityType>

Однако он не генерировал соответствующее определение класса для класса Audit_Log. Если я полностью удалю файл edmx и выберу все нужные мне таблицы, а также эту новую, он будет сгенерирован правильно.

1 Ответ

0 голосов
/ 22 мая 2019

Это обходной путь для решения проблемы. Если вы развернете файл .edmx в Solution Explorer, вы увидите два файла, которые заканчиваются на .tt. Щелкните правой кнопкой мыши по ним и выберите Запустить пользовательский инструмент , и классы будут сгенерированы. Просто сделать это для самого файла .edmx у меня не получилось.

...