似乎没有代码生成工具的结束,而是不必通过每个工具来查看仍然维护,易于使用和提供自定义的内容。 代码生成用于NHibernate映射以及随后创建的值对象或数据传输对象(DTO)。如果它也可以用其他语言生成,例如动作脚本,那将会很棒。
由于正在开发的这个应用程序正在使用数据库,因此ORM通常是1:1映射。我知道这会破坏使用NHibernate的大多数原因,但事实就是如此。
答案 0 :(得分:2)
T4 - 内置于Visual Studio 2008中。您已经免费获得它。效果很好,完全支持。如果您进行一些搜索,可以找到Linq To Sql和Entity Framework的T4脚本。我确信NHibernate脚本也存在。
MyGeneration:开源,也非常好。没有Visual Studio集成。
代码史密斯:商业,做得很好。还集成到Visual Studio中。所有这些都可以自定义。就脚本而言,Code Smith和T4与我非常相似。
答案 1 :(得分:0)
我通常创建一个XSLT,它查询连接到syscolumns的sysobjects(假设一个人正在使用SQL Server)并转换输出以构建必要的结构。这有一个缺点,你必须自己编码和调试它。但是,一旦你有了它的工作,你就可以100%灵活地扩展和定制它,而且前期的时间和精力是唯一的成本(通常大约需要2-3天来获得初始工作副本)。
希望这有帮助,
比尔
答案 2 :(得分:0)
我还没有时间去看它,但是4.0中的Entity Framework(VS2010,现已公开测试版)支持从edmx生成代码的T4模板...所以你可以根据自己的喜好自定义它。搜索“实体框架T4模板”,你会发现很多,尤其是最近几天。
答案 3 :(得分:0)
我们使用了开源NVelocity