Должен ли я извлечь код исправления ассоциации из моего шаблона Entity Framework T4?

Может кто-нибудь прояснить мои соображения по поводу кода исправления ассоциации в Entity Framework (POCO, сгенерированных T4), пожалуйста?

Недавний комментарий относительно исправления гласил: "Например, code-first не использует их, и все по-прежнему работает".

Я немного запутался в этом исправлении - кажется, никому это не нравится - мне, конечно, не нравится, что он загрязняет мои POCO (хотя моя причина из-за проблем с производительностью), но мне не ясно, в каких сценариях я бы действительно нужно это.

Если я использую кратковременные времена жизни контекста данных, т. Е. Новый контекст для каждого запроса страницы (UoW) в приложении ASP.NET, тогда мне вообще следует беспокоиться, если бы я вырвал весь код исправления ассоциации из шаблона T4 (наконец-то хорошие чистые POCO)?

РЕДАКТИРОВАТЬ

Я нашел это обсуждение в MSDN "Fixup Goes Crazy", которое дает некоторые пояснения: http://social.msdn.microsoft.com/Forums/pl-PL/adodotnetentityframework/thread/a757d1fb-1339-422e-a03a-2b90ce4cd692

1 ответ

Решение

Fix up - это просто код, сгенерированный шаблоном T4. EF вообще не нужен, а EF его не использует. Команда ADO.NET предположила, что POCO должны быть умными и фиксировать свои навигационные свойства, если вы измените его с одной стороны. Если вы пишете свои сущности вручную вместо использования шаблона T4, и вы пропустите всю логику исправления, она все равно будет работать. Это также причина, по которой вам не нужно исправлять ошибки в коде.

Вы можете изменить свой шаблон T4 и удалить всю логику исправления.

Другие вопросы по тегам