Прагматически настроенный Программист: От Подмастерья Ведущему устройству без сомнения. Совет в нем так хорошо представлен и простой, с которым это сталкивается, как будто это был 'Разумный Программист'. Любите его.
Я написал полностью реконструированную реализацию механизма T4 для MonoDevelop IDE. Это открытый исходный код, работающий по разрешающей лицензии MIT / X11, поэтому вы можете встраивать движок в свое приложение или распространять его. Также имеется реализация инструмента командной строки TextTransform.exe и некоторых API-интерфейсов в пространстве имен Mono.TextTemplating для помощи в размещении движка.
Единственная реальная отсутствующая функция на данный момент - это настраиваемые процессоры директив, но для этого есть исправления. добро пожаловать: -)
Вы можете получить код из monodevelop / main / src / addins / TextTemplating в Mono SVN.
Насколько я понимаю, T4 является частью визуальной студии и не может распространяться без нее. Как минимум, вам нужно будет распространить оболочку VS вместе с вашим приложением.
T4, к сожалению, в настоящий момент привязан к Visual Studio. Я считаю, что Clarius работает над версией своих инструментов CodeGen, которая может поддерживать автоматизацию, но они еще не доработали набор функций, плюс это будет коммерческий продукт. (Дополнительная информация: http://www.visualt4.com/features.html .) До тех пор вам придется либо использовать классические методы кодогенерации (эффективно писать свой собственный T4), либо идти вниз по Маршрут Visual Studio Shell + SDK, о котором упоминает Олег (подробнее: http://msdn.microsoft.com/en-us/vsx2008/products/bb933751.aspx ).
Если вы этого не сделаете должны использовать синтаксис T4, тогда продукт CodeSmith может делать то, что вам нужно. Он включает API для написания шаблонов и генерации из них кода. Это хорошо зарекомендовавший себя коммерческий продукт, но я не стал Я сам этим пользовался. Там есть интерактивное справочное руководство, а ссылка на API находится здесь: http://www.codesmithtools.com/help/Default.aspx##CodeSmith.chm/Using_the_CodeSmith_API.html .
Надеюсь, что это помогает. Удачи!
Для обработки шаблонов T4 вы должны использовать Microsoft.VisualStudio.TextTemplating.dll, но я не думаю, что вы могли бы распространять эту сборку
С уважением { {1}} Muse VSExtensions