Каковы различия между XSLT и методами генерации кода T4? - PullRequest
3 голосов
/ 03 февраля 2009

Я только вхожу в идею генерации кода для задач повторяющегося кодирования и видел оба эти подхода. Я видел подход XSLT в книге Apress Генерация кода в Microsoft .Net и читал о подходе T4 относительно того, что нового в инфраструктуре MVC.

Для каких проектов лучше подходит каждый метод? Быстрый взгляд говорит мне, что T4 - более легкая система, это правда?

Большое спасибо ...

1 Ответ

7 голосов
/ 04 февраля 2009

Хорошо, да - T4 - это основанный на шаблонах подход, который может извлекать информацию из различных источников - обычно из базы данных (таблицы или системные каталоги).

T4 встроен в VS 2008 - вы можете определить файл .tt внутри VS2008 и сделать так, чтобы он генерировал свой вывод внутри VS.

У XSLT есть одно требование - входные данные должны быть XML, а сам XSLT также является XML, поэтому существует ряд проблем и возможных недостатков.

XSLT является автономным - вы можете установить и использовать любое количество двигателей XSL.

В целом: для меня T4 - это скорее инструмент для генерации кода «внутри VS» (для быстрого создания C # или других файлов), в то время как XSLT - это скорее инструмент для обработки / преобразования данных, из которого можно превратить данные XML в другой формат (обычно HTML или PDF с использованием XSL-FO).

Марк

...