Moon .ORM 一个最便捷性能最优的ORM系统

jopen 10年前

1.Moon的特色
            

       ----但凡众多的智慧都是及其简单的,但不为人所知.这也是Moon.ORM的主要特色:大道至简.

      1.高性能是Moon.ORM优势之一,也是我架构它的主要目的之一,我已经将它的性能提升到了极致.如以前我说的那样,是为了弥补项目中遇到的性能问题而设计.可以说对于整个框架数据处理上采用了纯的ADO.NET进行自动编译的同时结合了EMIT达到快速生成实体的目的.

      我不得不承认linq和lambda语句带来的优雅,但同时我们需要承认linq的局限性.或许有人说可以通过手段进行一些弥补,如有人以提高 linq性能来写文章一样,但我们需要承认两个事实,每次对linq的系统识别后才能进行优化,也就是说,linq的天性决定有性能损失.再次linq不 是银弹,因为负责的场合linq几乎是做不到的,何况linq生成的sql不一定是你真正要的.(注意:我不是敌对linq,而是说实话,正如曾说:实际开发中没有银弹,只有平衡点,适合需求能解决实际情况的架构那就够了)而且我也没有必要再去写一个框架,做一个类似Nhibernate,或者实体框架的东西.做东西我一直认为需要做一个能有自我的特色和优势.

      2.易用性强大,我想用过Moon.ORM的应该可以知道这点.配置简单,智能感知,代码生成器的辅助,会sql就可会用Moon.

      3.多数据库多数据源支持. 在同一个项目中我们需要处理这种情况时,Moon.ORM是你最好的选择.如你系统默认为MSSQL,现在要同时使用 MYSQL,你只需要实例化一个引擎就可以.DBFactory.GetEntity<Person> (pjy_AdminRoleTable.RoleID.BiggerThan(0),new MYSQL("连接字符串"));当然你可以把引擎做成全局的.

      4.语法糖功能.个人使用的结果是大概能满足我实际需求的70%以上的功能.

      5..NET 2.0原生支持,这个就不用说了.

      6.数据库转变问题,如果你发现你有一天你的数据库需要从mysql转变到mssql,你只需要转变你的配置文件即可.(当然sql语法差异的问题,你需要自己注意了,如果你在用原生的sql进行操作时).

项目主页:http://www.open-open.com/lib/view/home/1357791065558