Я немного поболтал в T4 - эй, если он бесплатный и включен в VS2008, используйте его, верно?
Моя основная идея состояла в том, чтобы создать набор шаблонов для чтения таблицы базы данных и создать из нее наши собственные классы ORM.
Я разочаровался в T4, расстроенный и неспособный заставить даже самые простые вещи работать, которые являются частью пирога в CodeSmith.
Даже простая задача, такая как выбор используемого сервера, базы данных и таблицы, не может быть эффективно выполнена в T4 "снаружи" самого шаблона. Да, вы можете жестко закодировать все эти значения как строковые значения в шаблон T4 - но да, это действительно не решение, не так ли?
CodeSmith имеет отличную поддержку для выбора сервера, базы данных и таблиц, и вы можете установить их в качестве свойств в шаблоне и просто выбрать то, что вы хотите, и позволить шаблону делать ваши вещи на этой конкретной таблице, которую вы выбрали.
Мое заключение: Т4 многообещающий, но пока не "там" Это может работать для очень простых сценариев, но сейчас, на мой взгляд, это далеко не так гибко и мощно, как в Codesmith.
Поскольку для такого сценария, как .netTiers, я бы пока использовал Codesmith.
Марк