.NET Orm性能测试分析
简介
OrmBenchmark 这个项目主要是为了测试主要的Orm对于 SqlServer 数据库的查询并将数据转换成所需 POCO 对象的耗时情况(好吧,实际上不完全orm,更像是SqlMapper ...)
测试结果:
.NetFramework 4.6 有预热
.NetFramework 4.6 没有预热
.NETCore2.0 有预热
.NETCore2.0 没有预热
总体来看, Dapper的性能还是蛮强悍的
更多详情:
性能测试
性能测试结果在以下测试中得出:
重复执行一个sql命令的性能测试(500次):
执行一条select语句并将返回的数据映射到POCO对象超过500次迭代
将数据库记录映射到POCO对象(5000行)的性能测试:
在一次迭代中将由一个select返回的5000行映射到POCO对象的性能
获取测试结果
直接下载这个项目,运行就可以得到结果,并且你可以加上你最喜欢的 ORM 框架作为到这个项目中。
相关推荐
-
.net MVC使用IPrincipal进行Form登录即权限验证(3)
.net MVC使用IPrincipal进行Form登录即权限验证,供大家参考,具体内容如下 1.在MVC项目中添加用户类,可以根据实际项目需求添加必要属性 public class UserData { /// <summary> /// ID /// </summary> public int UserId { get; set; } /// <summary> /// 用户名 /// </summary> public string UserName
-
Asp.net webForm设置允许表单提交Html的方法
1.在表单需要提交Html的页面头部加入 ValidateRequest="false" <%@ Page Language="C#" AutoEventWireup="true" ValidateRequest="false" %> 2.webConfig 的 <system.web> 节点下配置 <httpRuntime requestValidationMode="2.0&qu
-
.net MVC中使用forms验证详解
.net MVC中使用forms验证,供大家参考,具体内容如下 文件夹的分部是这样子的 首先在Web.config中设置 authentication和authorization 节点 <system.web> <authentication mode="Forms"> <forms loginUrl="~/Login/Index" timeout="2880" defaultUrl="~/Home/Ind
-
ASP.NET MVC下Ajax.BeginForm方式无刷新提交表单实例
有时候,不得不考虑到以下场景问题: 数据库表字段会频繁更改扩展,而流行的重业务的js框架过于依赖json数据接口,导致的问题是,数据库表更改 -> 数据接口更改 -> 前段框架逻辑更改... 一不小心就陷入坑坑洼洼. 这样的话,原来纯ASP.NET MVC绑定的方式,还是可以一用的,因为该方式不用再为那么多js代码烦恼. 不好意思,前面自说自话啊,直接上干货代码了---- Ajax.BeginForm @{ Layout = null; var ajaxOptions = new AjaxOp
-
.net core利用orm如何操作mysql数据库详解
前言 众所周知Mysql数据库由于其体积小.速度快.总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库.MySQL是一个多用户.多线程的关系型数据库管理系统. 工作模式是基于客户机/服务器结构.目前它可以支持几乎所有的操作系统. 简单的来说 ,MySql是一个开放的.快速的.多线程的.多用户的SQL数据库服务器. 下面讲解如何在.net core中使用mysql数据库,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 操
-
深入理解Asp.Net中WebForm的生命周期
前言 本文主要给大家介绍的是关于Asp.Net中WebForm生命周期的相关内容,分享出来供大家参考学习,下面来看看详细的介绍: 一.Asp.Net页面生命周期的概念 当我们在浏览器地址栏中输入网址,回车查看页面时,这时会向服务器端IIS)发送一个request请求,服务器就会判断发送过来的请求页面,当完全识别 TTP页面处理程序类后,ASP.NET运行时将调用处理程序的 ProcessRequest 方法来处理请求.创建页面对象.通常情况下,无需更改此方法的实现,因为它是由 Page 类提供的
-
asp.net core标签助手的高级用法TagHelper+Form
上一篇博客我讲解了TagHelper的基本用法和自定义标签的生成,那么我就趁热打铁,和大家分享一下TagHelper的高级用法~~,大家也可以在我的博客下随意留言. 对于初步接触asp.net core的骚年可以看看我对TagHelper的了解和看法: <asp.net core新特性(1):TagHelper> 之后,我也会继续撰写博文,继续分享asp.net core的一些新特性,比如DI,ViewComponent以及bower等asp.net mvc中没有的新东西. ok,咱们就开始吧
-
.net WINFORM的GDI双缓冲的实现方法
有时候在窗体中执行不断的GDI+操作的时候会出现闪速的状况,除了修改窗体的参数,更应该解决刷新本身的问题,双缓冲可能就是这样来的. 方法1: 用GDI绘制在位图上,然后再重新生成位图 Bitmap bt = new Bitmap(510, 510); Graphics g = Graphics.FromImage(bt); g.DrawEllipse(Pens.Red, 100, 100, new Random().Next(1, 60), 50); g.Dispose(); gb.DrawIm
-
Asp.net mvc验证用户登录之Forms实现详解
这里我们采用asp.net mvc 自带的AuthorizeAttribute过滤器验证用户的身份,也可以使用自定义过滤器,步骤都是一样. 第一步:创建asp.net mvc项目, 在项目的App_Start文件夹下面有一个FilterConfig.cs,在这个文件中可以注册全局的过滤器.我们在文件中添加AuthorizeAttribute过滤器如下: public class FilterConfig { public static void RegisterGlobalFilters(Glo
-
asp.net mvc中Forms身份验证身份验证流程
验证流程 一.用户登录 1.验证表单:ModelState.IsValid 2.验证用户名和密码:通过查询数据库验证 3.如果用户名和密码正确,则在客户端保存Cookie以保存用户登录状态:SetAuthCookie 1):从数据库中查出用户名和一些必要的信息,并把额外信息保存到UserData中 2):把用户名和UserData保存到 FormsAuthenticationTicket 票据中 3):对票据进行加密 Encrypt 4):将加密后的票据保存到Cookie发送到客户端 4
随机推荐
- 超级简单的php+mysql留言本源码
- js保留两位小数使用toFixed实现
- 如何设置一个严格30分钟过期的Session示例介绍
- 查看iOS Crash logs的方法
- ionic中列表项增加和删除的实现方法
- 理解js对象继承的N种模式
- IE及IE6浏览器中判断JS文件加载成功失败的方法
- PHP管理依赖(dependency)关系工具 Composer的自动加载(autoload)
- python实现查找两个字符串中相同字符并输出的方法
- Python实现从url中提取域名的几种方法
- Spring Boot整合RabbitMQ实例(Topic模式)
- Python win32com 操作Exce的l简单方法(必看)
- SQL Server把单个用户转换成多个用户的方法
- MySQL 5.7 zip版本(zip版)安装配置步骤详解
- 有关easyui-layout中的收缩层无法显示标题的解决办法
- Java实现直接插入排序和折半插入排序算法示例
- Laravel实现构造函数自动依赖注入的方法
- linux中shell的变量的数值计算
- Python3.6实现连接mysql或mariadb的方法分析
- Django密码系统实现过程详解