首页 文章

具有这些要求的最佳ORM是什么[关闭]

提问于
浏览
6

我正在为即将开展的项目寻找一个好的ORM .

该数据库将有大约1000到1200个表,它将在SQL Server和Oracle中,将根据客户的企业需求使用 . 此外,该项目的一部分将与WCF服务一起使用 . 我想要一个设计师或类似的东西 . LINQ的良好支持 . 可接受的表现 .

我试过DataObjects.Net,但它没有任何设计师 . 我们不能编码所有表,也不能使用代码生成器 . 而且我不确定DataObjects.Net是否支持切换数据库 . 我也熟悉EF4,但它不能同时支持这两个数据库,手动切换数据库(修改edmx文件)对于维护工作来说是一件痛苦的事 .

提前致谢 .

编辑:似乎OpenAccessLLBLGEN Pro有设计师,但我没有经验 .

5 回答

  • 2

    OpenAccess也可以为您完成这项工作 . 您可以使用Entity Framework建议的多个.rlinq文件和每个数据库的汇编方法 . 我看到你的好处就是你将从Telerik那里得到的支持,因为在开发这样一个比例的解决方案时,你很有可能遇到一两块石头 .

  • 7

    鉴于此信息,我建议调查NHibernate(和/或fluent-nhibernate) .

    您需要研究的项目是性能 . 这在很大程度上取决于您的应用程序的性质 . 1,000到1,200个表听起来很大,所以我建议在最终确定决策之前先运行一些有意义的性能测试(除了所有其他测试) .

    Edit :事实上,NHibernate更好的起点是nhibernate.info(谢谢,贾斯汀!) .

  • 1

    我也建议NHibernate,但研究它的地方绝对是NHForge:

    http://nhibernate.info/

    以下是高级功能概述(包括LINQ):

    http://nhibernate.info/doc/nhibernate-features.html

    有一些设计师,包括LLBLGen Pro:

    http://nhibernate.info/doc/commercial-product-ecosystem.html

    NHibernate 3现在处于alpha状态,但我知道它已经在一些地方用于 生产环境 . 这可能是进行新项目的最佳方式 .

  • 1

    我仍然会投票给Entity Framework v4 - EF4 .

    毕竟:

    • 你可以有多个EDMX文件,没问题 - 一个用于SQL Server,一个用于Oracle

    • 你可以将它们放入它们自己的类库中,然后在运行时(如果需要的话)使用Managed Extensibility Framework或你自己的东西加载或者,或者另一个或两者,

    • 您可以使用连接字符串轻松地在数据库中定位这些EDMX文件 - 实际上并不难

  • 2

    我认为你需要单独选择你的ORM和设计师工具 . 例如,使用EF和LLBLGEN,或NHibernate和CodeSmith,或NHibernate和LLBLGEN等 .

相关问题