NHibernate Fluent vs.属性

NHibernate Fluent vs.属性,nhibernate,fluent-nhibernate,attributes,nhibernate-mapping,Nhibernate,Fluent Nhibernate,Attributes,Nhibernate Mapping,我有兴趣将一些NHibernate配置/映射移动到代码中,以帮助解决一些维护问题。有人能提供关于流利的NHibernate与NHibernate.Mapping.Attributes的任何建议/赞成/反对/比较吗 我对Java Hibernate注释有一些经验,我很喜欢,但我很好奇NHibernate属性是否具有可比性,以及Fluent是否提供了应该考虑的主要优点/缺点。我认为没有人做过任何直接的比较。这取决于您对使用属性装饰实体的舒适程度。Fluent NHibernate旨在让您将NHibe

我有兴趣将一些NHibernate配置/映射移动到代码中,以帮助解决一些维护问题。有人能提供关于流利的NHibernate与NHibernate.Mapping.Attributes的任何建议/赞成/反对/比较吗


我对Java Hibernate注释有一些经验,我很喜欢,但我很好奇NHibernate属性是否具有可比性,以及Fluent是否提供了应该考虑的主要优点/缺点。

我认为没有人做过任何直接的比较。这取决于您对使用属性装饰实体的舒适程度。Fluent NHibernate旨在让您将NHibernate与完全未受污染的模型一起使用,而属性要求您更改实体;这是一个持久性问题泄漏到您的域中。这对您来说是否是一个问题是您是否应该选择属性


Fluent NHibernate还向表中抛出了比映射更多的东西。还有一个允许您自动映射域的。有一种方法可以大大减少设计中的重复。我不会重复所有内容,但您可以在上阅读更多内容。

NHibernate现在支持JPA(在.NET平台上称为NPersistence或NPA),包括JPA注释。 这是映射实体并使代码可移植到其他供应商的最佳方式。 请查看:


我同意保持模型不受污染的想法。这是我使用Fluent NHibernate的最大原因,尽管我主要在棕地项目中使用它。我刚刚开始在绿地项目中使用它,支持会议的automappings也非常好。老实说,我倾向于认为像这样的流畅配置是一种面向方面的编程,因此它与AOP有一些相同的好处。