用LinqPad查看Nhibernate生成的sql语句
使用Nhibernate开发一般都要对Nhibernate生成的sql语句进行查看及分析,查看Nhibernate生成的sql语句,可以使用NHProfiler和log4net。但NHProfiler是要付费的(当然,在天朝,你懂的……),用log4net配置比较麻烦。今天在网上查看Linq to Nhibernate资料的时候发现了一个工具LinqPad,于是又找了相关资源,发现它还真能实现Nhibenate语句的查看。废话少说,看下面的使用方法吧!
1、 下载LinqPad,地址:http://www.linqpad.net/
2、 配置LinqPad,运行LinqPad,在菜单里选择Query—>Query Propeties;在选项卡中Additional References,点击“Browse…”按钮,选择项目中必要的Dll。
Dll包括:数据库驱动dll,实体映射dll(图中的Entity),nhibernate相关的dll

3、 在选项卡“Additional Namespace Imports”点击右上角的“Pick from assemblies”然后再选择相应的命名空间即可

4、 写代码测试下

不仅看到了生成的sql语句,还看到查询的结果,还真方便!
代码:

Configuration configuration = new Configuration().Configure(@"替换成hibernate.cfg.xml的路径");
var SessionFactory = configuration.BuildSessionFactory();
using(var session= SessionFactory.OpenSession())
{
var list= session.Query<Role>().Select(
m => new Role() {Id = m.Id, Privileges = null, ReMark = m.ReMark, RoleName = m.RoleName}).ToList
();
//显示结果
list.Dump();
}

用LinqPad查看Nhibernate生成的sql语句的更多相关文章
- [NHibernate]查看NHibernate生成的SQL语句
最近接触到一个用Spring.Net结合NHIbernate的项目,第一次使用,有很多配置,数据操作一旦出问题,很难找到原因,那么如何查看NHibernate发送给数据库的SQL语句呢? 当然我们可以 ...
- [NHibernate]利用LINQPad查看NHibernate生成SQL语句
上篇文章中我们提到可以通过重写NHibernate的 EmptyInterceptor 拦截器来监控NHibernate发送给数据库的SQL脚本,今天看到有朋友用LINQPad工具来进行NHibern ...
- .net core 利用日志查看ef生成的SQL语句
EF Core 没有直接提供像 EF6 那样方便的在日志中记录最终生成的 SQL 的功能,可以通过官方提供的日志记录(Microsoft.Extensions.Logging)实现. 一. 使用 Mi ...
- C# 查看EF生成的SQL语句
用sqlsever追踪最后的sql语句. 返回IQueryable<T>类型, 里面封装的就是生成的SQL脚本,设置断点queryable = DataContext.Set<T&g ...
- 查看Linq to Sql生成的sql语句(转)
查看Linq to Sql生成的sql语句 在控制台项目中,比较简单,直接db.Log = Console.Out;就OK了 但是在其他项目中,需要处理如下: StreamWriter sw = ...
- oracle问题:新建了一个PDM文件,建表后生成的sql语句中含有clustered
问题描述 为了在oracle中新增表,在PDM中建表,使用其生成的sql语句,但是建表不能成功,提示 ORA-00906: 缺失左括号 原因是多了clustered 关键字 情景重现 1. 新建一个p ...
- 查看锁表进程SQL语句
查看锁表进程SQL语句 set pagesize 999 set line180 col ORACLE_USERNAME for a18 col OS_USER_NAME for a18 col ...
- Console程序下监控EFCore生成的SQL语句!
最近这两天在使用控制台程序学习EFCore,突然想看看生成的SQL语句,所以在网上找到一位大神的分享的方法! 准备工作: 1). MySqlEFCore NuGet: Pomelo.EntityF ...
- .NET Core实用技巧(一)如何将EF Core生成的SQL语句显示在控制台中
目录 .NET Core实用技巧(一)如何将EF Core生成的SQL语句显示在控制台中 前言 笔者最近在开发和维护一个.NET Core项目,其中使用几个非常有意思的.NET Core相关的扩展,在 ...
随机推荐
- 关于https和数字证书的一些必须知识
下面这篇文章叫做 HTTPS连接的前几毫秒发生了什么 ,是一篇译文,写得不错,十分有助于理解https. http://blog.jobbole.com/48369/ 下面的链接是百度文库的 数字证 ...
- Gym 100801A Alex Origami Squares (求正方形边长)
题目:传送门.(需要下载PDF) 题意:给定一个长方形,在长方形内部画三个相同的正方形,问正方形的边长最大是多大. 题解:根据长宽比例可以算出三种情况,如果长比宽大三倍以上,那么正方形边长就是宽:如果 ...
- apple配置WIFI热点
打开AirPort打开设置偏好-共享,找到WIFI相关
- 解决java.lang.UnsupportedClassVersionError
出现java.lang.UnsupportedClassVersionError 错误的原因,是因为我们使用高版本的JDK编译的Java class文件试图在较低版本的JVM上运行,所报的错误. 版本 ...
- 决策树之C4.5算法
决策树之C4.5算法 一.C4.5算法概述 C4.5算法是最常用的决策树算法,因为它继承了ID3算法的所有优点并对ID3算法进行了改进和补充. 改进有如下几个要点: 用信息增益率来选择属性,克服了ID ...
- 安装win7或win8系统时UEFI和Legacy模式的设置
很多新型号的笔记本或台式机主板都开始支持UEFI模式,比起原来的Legacy启动减少了BIOS自检,加快平台启动,如下图所示Legacy,UEFI启动过程: 安装系统,建议选择Legacy模式,在UE ...
- 使yum保留下载的rpm包
[root@14LN yum]# egrep 'cachedir|keepcache' /etc/yum.conf #cachedir=/var/cache/yum/$basearch/$releas ...
- jquery easy ui 1.3.4 事件与方法的使用(3)
3.1.easyui事件 easyui事件可以在构建的时候就通过属性方式添加上去,比如在panel收缩的时候添加一个事件,在构建的时候代码如下 onCollapse: function () { al ...
- ytu 1980:小鼠迷宫问题(DFS 深度优先搜索)
小鼠迷宫问题 Time Limit: 2 Sec Memory Limit: 64 MB Submit: 1 Solved: 1 [Submit][Status][Web Board] Desc ...
- Java Hour 38 Weather ( 11 ) – fastjson
有句名言,叫做10000小时成为某一个领域的专家.姑且不辩论这句话是否正确,让我们到达10000小时的时候再回头来看吧. Hour 38 Java 中的 json 反序列化 其实就是所谓的json 转 ...