Создание новых сущностей против настройки существующих сущностей - PullRequest
0 голосов
/ 21 октября 2011

Я искал в Интернете преимущества создания новых сущностей, создания новых сущностей по сравнению с настройкой существующих сущностей и т. Д., Но я не нашел ничего, что решительно поддерживало бы вещи и очень конкретно, где использовать настраиваемую сущность или где создавать новую сущность в C #.

У меня в голове есть несколько моментов, которыми я хочу поделиться с вами, и хочу получить ваши отзывы и ссылку для поддержки.

Преимущества создания новых сущностей в том, что вы можете определить свой собственный класс и использовать его как сущность. Это позволяет вам избежать частичного ключевого слова в определениях типов классов. Отсутствие частичного ключевого слова поможет быстрее скомпилировать ваше приложение за счет сокращения накладных расходов на его обработку. Еще одно преимущество не использования partical заключается в том, что мы не получаем более одной реализации одной и той же функции по ошибке, поскольку мы можем избежать этого с помощью наследования.

Во-вторых, иногда модификация вещи более типична, чем ее реализация с нуля.

1 Ответ

1 голос
/ 21 октября 2011

Обычно, когда вы используете модель Entity Data с Database First или Code First, сгенерированный код будет содержать ваши скалярные свойства и навигационные свойства, а также набор событий и частичных методов, которые вы можете использовать.

Если вы не хотите, чтобы EF создавал это, вы должны написать его самостоятельно, и в итоге вы получите тот же код, который также мог быть сгенерирован.

У меня никогда не было причин, по которым вы не хотите использовать частичное ключевое слово.Это хороший способ отделить сгенерированный код от ваших собственных рукописных расширений.Я не буду беспокоиться о времени компиляции.Если вы посмотрите на Intellisense при доступе к членам частичного класса, то увидите, что компилятор уже все выяснил в фоновом режиме, даже не заметив этого.

Так что, если вы сначала используете Database First или Code FirstВ подходе нет ничего плохого в том, чтобы позволить Entity Framework генерировать сущности для вас.Конечно, у вас все еще есть много вариантов генерации кода.Шаблоны POCO будут генерировать хорошие, чистые классы с минимальной связью с базой данных.

Если вы действительно хотите создать свои объекты полностью с нуля, вы всегда можете посмотреть только на код.Это метод, при котором Entity Framework выводит отображение базы данных из ваших объектов POCO в базу данных (с некоторой помощью при необходимости через свободный API).

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