是否有任何免费工具可帮助简化 .NET 3.5 中的 NHibernate 项目的工作?首先,我正在寻找某种代码和配置文件生成器来自动化使用 NHibernate 的一些更繁琐的部分。
10 回答
Fluent-NHibernate提供了另一种编写映射的方法,例如,它比标准 XML 方法更易于重构。
例子:
public CustomerMap : ClassMap<Customer>
{
public CustomerMap()
{
Id(x => x.ID);
Map(x => x.Name);
Map(x => x.Credit);
HasMany<Product>(x => x.Products)
.AsBag();
Component<Address>(x => x.Address, m =>
{
m.Map(x => x.AddressLine1);
m.Map(x => x.AddressLine2);
m.Map(x => x.CityName);
m.Map(x => x.CountryName);
});
}
NHibernate 查询分析器是构建查询的必备工具。我知道,这不是为了配置,而是在尝试了解 HQL 时必须这样做。
留意 Oren (Ayende) 的 NHhibernate Profiler:
http://ayende.com/Blog/archive/2008/11/04/nh-prof-a-guided-tour.aspx
它尚未发布,但看起来很有希望。
ActiveWriter是 Visual Studio 的一个插件,可为 NHibernate 生成一些文件,但我还没有机会深入研究它。
MyGeneration有一些用于代码生成的nHibernate 模板。
Code-Smith 的免费版本曾经也有一些,但我认为它们已经有一段时间没有更新了。
在 nhibernate 之上使用基于属性的定义的活动记录实现怎么样?
David Hayden 已将T4 模板放在一起,这些模板可生成示例 Fluent NHibernate 映射类。
http://codebetter.com/blogs/david.hayden/archive/2008/12/14/t4-templates-for-fluent-nhibernate.aspx
NConstruct Lite 怎么样,一个用于生成映射文件和实体的小而强大的工具......
看看:dPulpo,一个数据层生成工具,它可以生成 NHibernate 映射文件、C# 实体类和你的 SQL 数据库。有一个 Visual Studio 插件,目前处于测试阶段,可以免费下载。
最新版本的 LLBLGen 能够生成示例 Fluent NHibernate 映射类和实体。