linq to sql-ado.net EF NHibernate等区别与性能

问题描述

ado.net EF NHibernate等区别与性能

SqlHelp、ADO.NET、Linq to Sql、Entity Framework与NHibernate都有什么不同?性能哪个更好一些?

解决方案

从性能看,ef最好,但是这种比较不公平,linqdb早就不维护了,在.net 4.0以后,ef有了直接将字段映射到属性的查询表达式支持。至于NHibernate,因为基于.net 2.0的技术,所以只能是反射。
另外ef、linqdb都是基于ado.net的,不存在和ado.net的比较。sqlhelper根本不算orm。

时间: 2024-12-31 07:24:23

linq to sql-ado.net EF NHibernate等区别与性能的相关文章

ADO.NET与ORM的比较(3) Linq to SQL实现CRUD

说明:个人感觉在Java领域大型开发都离不了ORM的身影,所谓的SSH就是 Spring+Struts+Hibernate,除了在学习基础知识的时候被告知可以使用JDBC操 作数据库之外,大量的书籍中都是讲述使用Hibernate这个ORM工具来操作数据. 在.NET中操作数据库的方式有多种,除了最直接的方式就是使用ADO.NET之外, 还可以使用NHibernate这个Hibernate在.NET中的实现ORM,如果你对第三方的 ORM 持怀疑态度,你还可以使用来自微软的实现.根正苗红的Lin

艾伟_转载:LINQ to SQL、NHibernate比较(二)-- LINQ to SQL实例

    用ADO.NET操作数据库大家一定再熟悉不过了,select.insert.update等等SQL语句大家也都必然滚瓜烂熟.我将自己在学习LINQ to SQL过程中的动手经历记录下来,作为今后学习的参考,也希望对刚刚接触的人有一点帮助.     我在本文涉及到一个很简单的系统,利用DataGridView实现数据库数据的批量增.删.改,不是什么强大的功能.     如果有人感兴趣,可以在看完我的这篇文章之后用ADO.NET实现同样的功能,看看到底会比使用LINQ to SQL多多少时间

LINQ to SQL语句(19)之ADO.NET与LINQ to SQL

ADO.NET与LINQ to SQL 它基于由 ADO.NET 提供程序模型提供的服务.因 此,我们可以将 LINQ to SQL 代码与现有的 ADO.NET 应用程序混合在一起,将 当前 ADO.NET 解决方案迁移到 LINQ to SQL. 1.连接 在创建 LINQ to SQL DataContext 时,可以提供现有 ADO.NET 连接.对 DataContext 的所 有操作(包括查询)都使用所提供的这个连接.如果此连接已经打开,则在您使 用完此连接时,LINQ to SQL

Linq to Entities in Ado.net EF的事务

  保持重典的风格,先看一下最终的效果. 前言 这事吧,还得从Linq to Sql说起 近乎所有的Linq to SQL的查询中总是免不了exec sp_reset_connection 与Audit Logout(就 是数据库连接) 这一进一出,费时太多,于是近半年来每个月总有那么几天来研究它 网上呢,解决方案不是没有 using (TransactionScope ts = new TransactionScope()){//一堆Linq to Sql or Linq to Entitie

LINQ to SQL、NHibernate比较(二)-- LINQ to SQL实例

用ADO.NET操作数据库大家一定再熟悉不过了,select.insert.update等等SQL语句大家也都必然滚瓜烂熟.我将自己在学习LINQ to SQL过程中的动手经历记录下来,作为今后学习的参考,也希望对刚刚接触的人有一点帮助. 我在本文涉及到一个很简单的系统,利用DataGridView实现数据库数据的批量增.删.改,不是什么强大的功能. 如果有人感兴趣,可以在看完我的这篇文章之后用ADO.NET实现同样的功能,看看到底会比使用LINQ to SQL多多少时间,会多多少代码.(从设计

LINQ体验(13)——LINQ to SQL语句之运算符转换和ADO.NET与LINQ to SQL

运算符转换1.AsEnumerable:将类型转换为泛型 IEnumerable 使用 AsEnumerable<TSource> 可返回类型化为泛型 IEnumerable 的参数.在 此示例中,LINQ to SQL(使用默认泛型 Query)会尝试将查询转换为 SQL 并在 服务器上执行.但 where 子句引用用户定义的客户端方法 (isValidProduct), 此方法无法转换为 SQL. 解决方法是指定 where 的客户端泛型 IEnumerable<T> 实现以替

LINQ体验(11)——LINQ to SQL语句之Null语义和String/DateTime方法

在本系列中,主要介绍LINQ to SQL基础的东西,因为LINQ太强大了,它对我 们平常使用不同的数据源有着不同的内容,其包括对于SQL Server 数据库的 LINQ to SQL:对于XML 文档的LINQ to XML:对于 ADO.NET 数据集的LINQ to DataSet:对于.NET 集合.文件.字符串等的LINQ to Objects.例外也出现了 一些对LINQ支持的开源项目,例如LINQ to JSON,LINQ for NHibernate等等. 在这个系列中,一些关

LINQ to SQL集成数据库语言的的优点与劣势

1.LINQ to SQL的优点 在LINQ to SQL推出之前,我们只是把SQL语句形成一个string,然后,通过ado.net传给SQLserver,返回结果集.这里的缺陷就是,如果你SQL语句写的有问题,只有到运行时才知道.而且并不所有的人都懂数据库的.LINQ to SQL在一切围绕数据的项目内都可以使用.特别是在项目中缺少SQL Server方面的专家时,LINQ to SQL的强大的功能可以帮我们快速的完成项目.LINQ to SQL的推出,是让大家从烦琐的技术细节中解脱出来,更

Linq To Sql进阶系列(一)-从映射讲起

本系列,或多或少,直接或间接依赖入门系列知识.但,依然追求独立成章.因本文作者水平有限, 文中错误难免,敬请读者指出并谅解.本系列将会和入门并存. 案例 某君被邀为一超市设计数据库,用来存储数据.该君根据该超市中实际出现的对象,设计了 Customer, Employee,Order, Product等表,用来保存相应的客户,员工,订单,货品等.太好了,该 君很有oo的思想吗. 如果,你被要求用类及对象,来描述该关系型数据,你该如何做呢?在linq推出之前,ADO.NET被用 来做数据访问层.而