我有兴趣为即将到来的项目使用Object-Relational Mapping包.该项目将作为ASP.NET应用程序开始,但将具有许多最终将与WinForms应用程序共享的功能.任何人都可以建议一些好的,免费的ORM包在ASP.NET和WinForms情况下都能很好地工作吗?
SubSonic没有nHibernate那么广泛; 相反,它是每个表数据访问层的直接Active Record 1类.
一些功能是查询工具,执行存储过程的能力和ASP.net中的脚手架应用程序.您可以在30分钟或更短的时间内启动并运行,在Config.app文件中只需很少的学习曲线和最少的配置.
我总是推荐Castle ActiveRecord.它是NHibernate之上的一层.它在你提到的两种环境中都很有效.
nHibernate适合我,但这一切都取决于你所追求的.很多人不想完全使用DDD和单元测试路线.他们只是想要一些简单的东西来将他们的数据库映射到对象,以使代码更好一些.如果是这样,那么看看Subsonic,它可能更容易上手.
我赞成Fluent NHibernate,它允许您在强类型C#中创建映射,而不是使用普通的NHibernate XML文件.它也允许你混合和匹配(你可以在代码和XML中使用映射).
有一个很好的入门文章在这里.