2

Проблема, с которой я столкнулась, заключается в использовании шаблонов POCO, генерировании моих классов POCO только в первый раз и не перезаписи их при повторном запуске шаблонов. Я знаю, что это звучит довольно громко, и причина в том, что я фактически меняю эти шаблоны и пытаюсь сгенерировать классы метаданных, а не реальные классы POCO, но эти классы метаданных будут отредактированы вручную, и я хочу сохранить эти изменения в будущем, но все еще восстанавливает определенное количество. У меня все работает так, как я хочу, кроме регенерации файлов.Создайте только классы POCO EF4 только в первый раз

Я просмотрел T4 и кажется, что есть a flag to do just this (см. Свойство Output.PreserveExistingFile), но я не понимаю, где/как установить этот флаг. Если вы можете сказать мне, где/как установить это в шаблонах POCO по умолчанию, то я думаю, что это все, что мне действительно нужно.

Спасибо! :-)

ответ

1

Недвижимость PreserveExistingFile доступна только в T4 Toolbox. Шаблоны POCO равны T4, кто-то должен их преобразовать. Любые волонтеры?

+0

Это показывает мое невежество относительно того, что T4 и T4 Toolbox. : -P Итак, это большая задача? – Jaxidian

+0

Это было бы неслыханно. Шаблоны EF объединяют все классы в одном файле .tt. T4 Toolbox разделяет их на отдельные .tt файлы/классы шаблонов. Пинг меня, если вы заинтересованы. –

1

Вы делаете это неправильно.

Все классы созданы partial classes. Если вы хотите изменить шаблоны, создайте новые частичные классы и поместите в них свой код.

+0

Невозможно сделать это с атрибутами метаданных. Мне нужно добавить атрибуты к самим свойствам, а свойства, которые я хочу добавить в атрибуты, генерируются с помощью кода. Но даже все-таки, я хочу, чтобы в первый раз это было сделано для меня в первый раз (т. Е. Когда я создаю новый DAL для БД с ~ 150 таблицами, мне нужен атрибут «Обязательный» для NotNull столбцы, числовые для столбцов int и т. д.). Более сложные проверки мы добавим вручную, но если мы сможем кодировать тривиальные вещи, это сэкономит много времени. И почему бы не сохранить его для новых таблиц? – Jaxidian

+0

Что касается собственно самой модели, я хочу, чтобы она ВСЕГДА оставалась в синхронизации с моим edmx, который определяет модель, чтобы те, кого я хочу всегда генерировать. – Jaxidian

Смежные вопросы