Ответ 1
Я использовал шаблоны T4 в sharp-architecture, чтобы генерировать все от моделей до контроллеров до основных видов.
Определенно стоит проверить, даже если вы просто хотите увидеть несколько продвинутых примеров шаблонов T4 в действии
T4 существует уже несколько лет в Visual Studio, но не получает большого внимания. Однако для тех, кто это знает, кажется, есть некоторые очень творческие и полезные цели.
Я изучаю различные способы использования T4, и я был бы рад услышать, как вы могли использовать его для реальных сценариев жизни. Меня в первую очередь интересуют нестандартное и творческое использование.
Некоторые интересные примеры:
Примечание. Я понимаю, что это вопрос, ориентированный на обсуждение, но ответы могут быть полезны другим. Я отметил его как субъективный, а также отмечен как "вики сообщества", поэтому, пожалуйста, разрешите оставаться открытым. Спасибо!
Я использовал шаблоны T4 в sharp-architecture, чтобы генерировать все от моделей до контроллеров до основных видов.
Определенно стоит проверить, даже если вы просто хотите увидеть несколько продвинутых примеров шаблонов T4 в действии
Я не большой поклонник нитей app.config/web.config, поэтому я использую T4 для чтения этих файлов и создания класса AppSettings/WebSettings, который обертывает строки подключения и ключ/значения в реальном класс. Это означает, что, пока я всегда использую AppSettings.SomeValue для ссылки на мой app.config, я получаю проверку времени компиляции, что очень приятно.
Я использую T4 для:
Это дает мне хорошую, быструю, простую базовую отправную точку для моих проектов.
И самое лучшее, что я контролирую.
SubSonic 3.0 сильно использует шаблоны T4 для генерации вашего кода сущности.
По существу он вызывает GetSchema()
в вашем соединении с базой данных и запускает каждую таблицу, которую он находит через шаблон сущности T4. Самое замечательное в использовании T4 здесь заключается в том, что если вам не нравится, как он обрабатывает вашу схему базы данных, просто отредактируйте шаблон.
Я изменил T4, чтобы лучше обрабатывать базы данных MySQL, поскольку я использую многие столбцы tinyint
, которые по умолчанию T4 сопоставляются с типами byte
. Быстрое редактирование на T4 дало мне тип, который я хотел бы вместо этого для моих объектов приложения.
Шаблоны LINQ to SQL для T4
http://l2st4.codeplex.com/
Шаблоны, реплицирующие функциональные возможности SQLMetal и конструкторы кода конструктора классов LINQ to SQL для С# и VB.Net, требующие только Visual Studio 2008.
Посмотрите этот подкаст на T4 Скотта Гензельмана, разговаривающего с Кэтлин Доллард.
http://www.hanselminutes.com/default.aspx?showID=170
Я использовал T4 для генерации:
Шаблоны T4 широко используются в программном обеспечении веб-сервисов Factory (Сервис Factory).
См. здесь список более 30 генераторов T4 из сообщества в нескольких областях, включая ASP.NET, WCF, UML, ADO.NET,.NET
http://t4-editor.tangible-engineering.com/How-Do-I-With-T4-Editor-Text-Templates.htm