您有使用T4和T4 Editor的经验吗?您可以将它与CodeSmith或MyGeneration进行比较吗?
你使用什么代码生成器?你有什么建议吗?
我想用它来生成 SP。你觉得代码生成还有什么有用的吗?
您有使用T4和T4 Editor的经验吗?您可以将它与CodeSmith或MyGeneration进行比较吗?
你使用什么代码生成器?你有什么建议吗?
我想用它来生成 SP。你觉得代码生成还有什么有用的吗?
作为代码生成引擎,T4 与 CodeSmith 或 MyGeneration 一样强大。它的主要优点是与 Visual Studio 的紧密集成;主要缺点是即用型模板数量较少。
我个人更喜欢 Tangible 的T4 编辑器,因为它可以与T4 Toolbox一起使用。
奥列格
你到底想做什么?我想这也取决于您尝试从哪里生成代码(模型)。
Codesmith 和 MyGeneration 的优势在于,它们为您提供了多种生成代码的选项——例如,在 MyGeneration 中,您可以使用各种语言编写模板。
MyGeneration 可以提供任何数据库的元模型和许多内置的生成器脚本——因此,如果你想生成 SP,最简单的方法就是使用 MyGeneration 的生成器——你可以在那里找到 CRUD SP 的生成器。如果您想修改生成器,它还提供了一个相当不错的编辑器。
如果您正在构建 DSL 或其他东西(我的意思是,模型来自其他地方),那么您可能会考虑使用 T4。然而,T4 编辑并不是我做过的最简单的事情,因为 Visual Studio 中没有 T4 编辑支持。您可以考虑购买 Clarius T4 编辑器以获得良好的编辑支持。
提高生产力的方法是使用Visual Studio 的内置片段。
tab tab
就像键入if
并按两次 Tab 会为您生成一个 if 语句,然后基本上您只需填写空白
try
两个选项卡将生成一个 try-catch 块
ETC...
您可以使用完整的片段列表。
除了现在推荐的 T4 模板外,还有另一种在 VS 中生成代码的方法 - MVC Scaffolding,可以用于任何代码生成(不仅是 ASP.NET MVC)。
它基于 T4,但添加了一些有用的功能,如模板参数、与 VS 的集成(打开文档等)、PowerShell 脚本和多文件生成。