我有兴趣将一些NHibernate配置/映射转移到代码中以帮助解决一些维护问题。任何人都可以提供Fluent NHibernate与NHibernate.Mapping.Attributes的任何建议/优缺点/比较吗?
我对Java Hibernate注释有一些经验,我很喜欢,但我很好奇NHibernate属性是否具有可比性,以及Fluent是否提供了应该考虑的任何重大上行/下行。
答案 0 :(得分:19)
我认为没有人做过任何彻底的比较。它归结为您使用属性装饰实体的舒适程度。流畅的NHibernate旨在让您使用NHibernate完全未受污染的模型,而属性则要求您改变实体;这是一个泄漏到您的域中的持久性问题。这对您来说是否有问题是您是否应该选择属性。
流畅的NHibernate还会向桌面抛出更多东西,而不仅仅是映射。还有auto mappings,可让您自动映射您的域名。 conventions support允许您大大减少设计中的重复次数。我不会重复所有内容,但您可以在Fluent NHibernate wiki上阅读更多内容。
答案 1 :(得分:0)
NHibernate现在支持JPA(在.NET平台上称为NPersistence或NPA),包括JPA注释。 这是映射实体的最佳方式,也可以为其他供应商提供可移植代码。 看看: