项目中的sql语句都是拼接成的,怎么样捕捉跟踪程序所有sql,效果跟事件探查器差不多,最主要就是把每一次数据库操作时的sql写到一个文件里.
解决方案 »
- JS 问题, 大家看下~
- DropDownList更改值的时候
- imagebutton如何直接接收数据库里的image字段
- asp.net中,如果用变量给datalist中添加值,用到了循环,是显示的最后一个的值,还是循环当中的值?
- 有没有IIS的安装文件啊,每次都用系统盘装,大家有没有好点的装IIS的方法啊?求助
- [恳请大家帮忙]Ajax的问题我已经弄很长时间
- 关于在线显示
- 求救!!!SqlServer中用text类型存了一篇文章,现在要在网页上显示出来,怎么办???
- 框架刷新问题
- 问一个屏蔽刷新的问题,如果不行的话就是散分
- 问题:DataList下Dropdownlist操作另一个DataList下内容.急
- 有个问题希望和大家讨论下
----------
没用过,不知道什么东东!!!
你调用DAL 访问数据库的方法应该是只有一个的
在这个类里面做一个纪录操作就ok了例如所有的类都是调用SqlHelper访问数据库
MS企业库中数据访问程序块Data Access Application Block,开源
它把SqlHelper的东西都封装好了,当时觉得调用时方便,就用了它.
// WriteSqlToLog(Command.CommandText); // WriteSqlToLog 是自己定义方法
DataReader = Command.ExecuteReader();
// WriteSqlToLog(Command.CommandText);
rowsAffected = Command.ExecuteNonQuery();
打开DAAB源码的工程项目,找到Database.cs文件,找到PrepareCommand方法
PrepareCommand函数有两个重载方法,
protected static void PrepareCommand(DbCommand command, DbConnection connection)
protected static void PrepareCommand(DbCommand command, DbTransaction transaction)
后一个也调用到前一个,所以在前一个方法加上把command.CommandText写到一个文件或系统事件日志都可以.
如果是存储过程,或者带有参数的SQL,参考MS Sql Server事件探查器中的格式,把对应的参数拼连起来.
如果写到系统事件日志,就要为aspnet用户添加权限