我刚刚进入重复编码任务的代码生成的想法,并且已经看到了这两种方法。我在 Microsoft .Net 中的 Apress 书籍代码生成中看到了 XSLT 方法,并阅读了与 MVC 框架中的新功能相关的 T4 方法。
每种方法更适合什么样的项目?快速浏览告诉我 T4 是一个更轻量级的系统,这是真的吗?
非常感谢...
我刚刚进入重复编码任务的代码生成的想法,并且已经看到了这两种方法。我在 Microsoft .Net 中的 Apress 书籍代码生成中看到了 XSLT 方法,并阅读了与 MVC 框架中的新功能相关的 T4 方法。
每种方法更适合什么样的项目?快速浏览告诉我 T4 是一个更轻量级的系统,这是真的吗?
非常感谢...
是的 - T4 是一种基于模板的方法,可以从各种来源提取信息 - 通常来自数据库(表或系统目录)。
T4 内置于 VS 2008 - 您可以在 VS2008 中定义一个 .tt 文件并让它在 VS 中生成其输出。
XSLT 有一个要求——输入必须是 XML,而 XSLT 本身也是 XML,因此存在许多挑战和可能的缺点。
XSLT 是独立的——您可以安装和使用任意数量的 XSL 引擎。
总而言之:T4 对我来说更像是一个“内部 VS”代码生成工具(用于快速创建 C# 或其他文件),而 XSLT 更像是一个数据处理/数据转换工具,用于将数据从 XML 转换为另一个格式(通常是使用 XSL-FO 的 HTML 或 PDF)。
马克