Можно ли обработать шаблоны T4 из приложения.NET?

Прагматически настроенный Программист: От Подмастерья Ведущему устройству без сомнения. Совет в нем так хорошо представлен и простой, с которым это сталкивается, как будто это был 'Разумный Программист'. Любите его.

5
задан John Saunders 27 July 2009 в 16:56
поделиться

5 ответов

Я написал полностью реконструированную реализацию механизма T4 для MonoDevelop IDE. Это открытый исходный код, работающий по разрешающей лицензии MIT / X11, поэтому вы можете встраивать движок в свое приложение или распространять его. Также имеется реализация инструмента командной строки TextTransform.exe и некоторых API-интерфейсов в пространстве имен Mono.TextTemplating для помощи в размещении движка.

Единственная реальная отсутствующая функция на данный момент - это настраиваемые процессоры директив, но для этого есть исправления. добро пожаловать: -)

Вы можете получить код из monodevelop / main / src / addins / TextTemplating в Mono SVN.

4
ответ дан 18 December 2019 в 13:17
поделиться
6
ответ дан 18 December 2019 в 13:17
поделиться

Насколько я понимаю, T4 является частью визуальной студии и не может распространяться без нее. Как минимум, вам нужно будет распространить оболочку VS вместе с вашим приложением.

2
ответ дан 18 December 2019 в 13:17
поделиться

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 .

Надеюсь, что это помогает. Удачи!

1
ответ дан 18 December 2019 в 13:17
поделиться

Для обработки шаблонов T4 вы должны использовать Microsoft.VisualStudio.TextTemplating.dll, но я не думаю, что вы могли бы распространять эту сборку

С уважением { {1}} Muse VSExtensions

1
ответ дан 18 December 2019 в 13:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: