Dapper with MVC MiniProfiler

Dapper是一個輕型的ORM類。代碼就一個SqlMapper.cs文件,主要是IDbConnection的擴展方法,編譯後就118K的一個很小的dll。官方站點http://code.google.com/p/dapper-dot-net/ 
html

MVC MiniProfiler是Stack Overflow團隊設計的一款對ASP.NET MVC的性能分析的小程序。能夠對一個頁面自己,及該頁面經過直接引用、Ajax、Iframe形式訪問的其它頁面進行監控,監控內容包括數據庫內容,並能夠顯示數據庫訪問的SQL(支持EF、EF CodeFirst等 )。而且以很友好的方式展示在頁面上。sql

該Profiler的一個特別有用的功能是它與數據庫框架的集成。除了.NET原生的 DbConnection類,profiler還內置了對實體框架(Entity Framework)以及LINQ to SQL的支持。任何執行的Step都會包括當時查詢的次數和所花費的時間。爲了檢測常見的錯誤,如N+1反模式,profiler將檢測僅有參數值存在差 異的多個查詢。數據庫

MiniProfiler是以Apache License V2.0協議發佈的,你能夠在NuGet找到。配置及使用能夠看這裏:http://code.google.com/p/mvc-mini-profiler(MVC MiniProfiler 描述摘自張善友的文章 http://www.cnblogs.com/shanyou/archive/2012/04/03/2430977.html)小程序

 

以上兩款開源項目都在StackOverflow 上使用。固然咱們也能夠使用MVC MiniProfiler 來對Dapper中的sql執行時間進行監視,方法以下:mvc

  public  static List<Contact> GetContacts( string sqlConnectionString)
        {
            //  List<Contact> userList = new List<Contact>();
             var conn =  new ProfiledDbConnection( new SqlConnection(sqlConnectionString), MiniProfiler.Current);
            conn.Open();
             var result = conn.Query<Contact>( " select * from dbo.Contact where id>@id "new { id =  0 });
             return result.ToList();           
       

 

查看頁面 Dapper中SQL的執行時間:app

 

相關文章
相關標籤/搜索