Управление нормализацией базы данных с течением времени с помощью Entity Framework Core - PullRequest
0 голосов
/ 11 сентября 2018

Мы только начинаем отходить от устаревшей кодовой базы и начинаем использовать .net и Entity Framework Core для большинства нашего нового программного обеспечения.

Мы перенесли нашу базу данных со старой платформы на SQL Server, но данные старые и плохо нормированные.Мы не можем сразу приступить к проекту нормализации из-за потенциального воздействия на (большую) существующую кодовую базу в унаследованном языке, поэтому мы добавляем определения первичного и внешнего ключа в нашу базу данных по мере продвижения и восстанавливаем нашу модель Entity Framework Core изс нуля, так как все больше таблиц становятся действительными для фреймворка.

Мне кажется, что мы упускаем некоторые важные возможности Entity Framework Core, но я не знаю достаточно о фреймворке, чтобы определить, что это такое.,Я знаю, что сгенерированной модели не хватает полноты (мой вопрос был вызван, потому что в таблице со столбцом Identity столбец не помечен как ValueGeneratedOnAdd();, фактически таблица вообще не отображается в методе OnModelCreating), но я незнаете, это проблема с базой данных или другая ошибка, которую я совершаю.

Мой вопрос: какие возможности есть в Entity Framework Core для управления быстро развивающейся моделью базы данных?Что я должен делать для себя, и для чего мне следует полагаться на команду Scaffold-DBContext?

1 Ответ

0 голосов
/ 11 сентября 2018

С EF Core большинство вещей, которые вам понадобятся, будут выполняться Scaffold-DBContext. Единственные вещи, которые он не обрабатывает сейчас - это наборы DBQuery. Вам придется вручную их кодировать. Кроме этого, все остальное довольно красноречиво обрабатывается командой.

Что касается ValueGeneratedOnAdd (), то единственное, что я когда-либо видел в качестве проблемы, - это таблицы версий. Если у вас есть версионная таблица, Scaffold-DBContext не добавит ее в эти поля, и у вас должны быть такие, чтобы вам пришлось вручную добавлять их в ваш код.

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