2009-10-20 85 views
1

我知道在Java中进行hibernate映射的注释,并且现在正在寻找类似的方法来在C#和NHibernate中执行相同的操作。我发现,存在几种方法NHibernate映射最有效的方法是什么?

  • 做在XML文件中的映射
  • NHibernate.Mapping.Attributes(NHMA)
  • 流利
  • 有什么比较?

我试图NHMA,发现它有一些阻塞点对我来说...

我不想你商量,什么映射模型NHibernate的最好的方式,但我一直在寻找在互联网上比较好。

你知道这样的网站吗?如果我选择上面列出的“框架”之一,需要考虑哪些事实要点?我正在考虑像'NH开发人员正式支持这个项目'这样的方面吗?'有没有可以在xml-mapping中映射但不是流利/ NHMA /等等的模型?

您能推荐些什么? 为什么?

回答

4

Fluent NHibnernate auto mapping或代码生成(CodeSmith,MyGeneration,T4等)是创建映射文件最有效的方法。我不喜欢属性方法,因为我喜欢让POCO保持简洁。

+0

+1必须流利地保持POCO清洁,并避免在对象发生更改时出现令人讨厌的XML问题。 – 2009-10-20 15:58:35

2

如果您不介意属性,另一种选择是Castle ActiveRecord

Here's an article这可能会帮助您决定。

+0

我赞赏你的文章。感谢这篇文章。我不介意模型中的属性,但我不希望每个实体都从ActiveRecord框架中继承基类。我不希望我的实体照顾自己的存储。像DAO更好;) – 2009-10-23 16:08:38

+0

继承自ActiveRecordBase 是完全可选的。作为DAO,您可以使用ActiveRecordMediator或Ayende的IRepository等包装:http://github.com/ayende/rhino-tools/blob/master/commons/Rhino.Commons.ActiveRecord/Repositories/ARRepository.cs – 2009-10-26 21:55:40

相关问题