在实际开发或试运行过程中,我们有时需要查看或分析模块执行的所有sql,以便进行相关分析。有时我们可以通过数据库自带的软件抓取,如:SQL Server Profiler。在我们RDIFramework.NET框架中已经提供了对Sql执行的跟踪支持,只需要把“LogSQL”配置项设置为True即可。
WinForm配置如下图所示:
MVC配置为:Code\RDIFramework.MvcApp\XmlConfig\下的system.config
WebForm配置为:Code\RDIFramework.WebApp\下的Web.config
Web同时要指定:SystemInfo.StartupPath = HttpContext.Current.Server.MapPath("~/");
如下图所示
登录框架后,随便点击一些模块,再查看框架运行目录下的“\Log\Query\”文件夹下以日期开始的文本文件,如下图所示:
随便打开一个文件,就可以查看所有的sql,如下图:
方法参考:
/// <summary> /// 写入sql查询句日志 /// </summary> /// <param name="commandText"></param> public virtual void WriteLog(string commandText) { string fileName = DateTime.Now.ToString(SystemInfo.DateFormat) + " _ " + this.FileName; WriteLog(commandText, fileName); } /// <summary> /// 写入sql查询句日志 /// </summary> /// <param name="commandText">异常</param> /// <param name="fileName">文件名</param> public virtual void WriteLog(string commandText, string fileName = null) { if (string.IsNullOrEmpty(fileName)) { fileName = DateTime.Now.ToString(SystemInfo.DateFormat) + " _ " + this.FileName; } string returnValue = string.Empty; // 系统里应该可以配置是否记录异常现象 if (!SystemInfo.LogSQL) { return; } // 将异常信息写入本地文件中 string logDirectory = SystemInfo.StartupPath + @"\\Log\\Query"; if (!System.IO.Directory.Exists(logDirectory)) { System.IO.Directory.CreateDirectory(logDirectory); } string writerFileName = logDirectory + "\\" + fileName; if (!File.Exists(writerFileName)) { FileStream FileStream = new FileStream(writerFileName, FileMode.Create, FileAccess.ReadWrite, FileShare.ReadWrite); FileStream.Close(); } StreamWriter streamWriter = new StreamWriter(writerFileName, true, Encoding.Default); streamWriter.WriteLine(DateTime.Now.ToString(SystemInfo.DateTimeFormat) + " " + commandText); streamWriter.Close(); } public virtual void WriteLog(string commandText, IDbDataParameter[] dbParameters = null, string fileName = null) { // 系统里应该可以配置是否记录异常现象 if (!SystemInfo.LogSQL) { return; } if (string.IsNullOrEmpty(fileName)) { fileName = DateTime.Now.ToString(SystemInfo.DateFormat) + " _ " + FileName; } string message = string.Empty; message = DateTime.Now.ToString(SystemInfo.DateTimeFormat) + System.Environment.NewLine + "commandText内容" + System.Environment.NewLine + commandText; if (dbParameters != null) { StringBuilder sb = new StringBuilder(); foreach (var parameter in dbParameters) { sb.AppendLine(parameter.ParameterName + "=" + parameter.Value); } message += System.Environment.NewLine + "dbParameters内容" + System.Environment.NewLine + sb.ToString(); } string logDirectory = SystemInfo.StartupPath + @"\Log\Query"; if (!System.IO.Directory.Exists(logDirectory)) { System.IO.Directory.CreateDirectory(logDirectory); } string writerFileName = logDirectory + "\\" + fileName; if (!File.Exists(writerFileName)) { FileStream FileStream = new FileStream(writerFileName, FileMode.Create, FileAccess.ReadWrite, FileShare.ReadWrite); FileStream.Close(); } StreamWriter streamWriter = new StreamWriter(writerFileName, true, Encoding.Default); streamWriter.WriteLine(DateTime.Now.ToString(SystemInfo.DateTimeFormat) + " " + message); streamWriter.Close(); }
参考文章:
RDIFramework.NET — 基于.NET的快速信息化系统开发框架 — 系列目录
RDIFramework.NET平台代码生成器V3.0版本全新发布-更新于20160518(提供下载)
RDIFramework.NET ━ .NET快速信息化系统开发框架钜献 V3.0 版本强势发布
RDIFramework.NET ━ .NET快速信息化系统开发框架 ━ 工作流程组件介绍
RDIFramework.NET框架SOA解决方案(集Windows服务、WinForm形式与IIS形式发布)-分布式应用
视频列表:
第1部分、框架在不同数据库中的配置
第1.1讲、RDIFramework.NET框架在SqlServer2008+中的配置与运行讲解
第1.2讲、RDIFramework.NET框架在Oracle11g+中的配置与运行讲解
第1.3讲、RDIFramework.NET框架在MySql 5.0+ 中的配置与运行讲解
第2部分、框架基于代码生成器的开发
第2.1讲、RDIFramework.NET框架基于代码生成器业逻辑层代码的生成
第2.2讲、RDIFramework.NET框架基于代码生成器生成MvcUI的讲解
第2.2.1讲、RDIFramework.NET框架基于代码生成器生成MvcUI的讲解_第2.2讲补充视频
第2.3讲、RDIFramework.NET框架基于代码生成器生成WebFormUI的讲解
第2.4讲、RDIFramework.NET框架基于代码生成器生成的业务逻辑进行WinForm程序的开发
一路走来数个年头,感谢RDIFramework.NET框架的支持者与使用者,大家可以通过下面的地址了解详情。
RDIFramework.NET官方网站:http://www.rdiframework.net/
RDIFramework.NET官方博客:http://blog.rdiframework.net/
同时需要说明的,以后的所有技术文章以官方网站为准,欢迎大家收藏!
RDIFramework.NET框架由专业团队长期打造、一直在更新、一直在升级,请放心使用!
欢迎关注RDIFramework.NET框架官方公众微信(微信号:rdiframework-net),及时了解最新动态。
扫描二维码立即关注
相关推荐
RDIFramework.NET代码生成器集代码生成、各数据库对象文档生成、数据库常用管理于一身,是软件开发者快速开发的神器。代码的生成支持基于数据库与PowerDesign设计文件生成,为企业及个人开发者能快速生成常用代码与...
【RDIFramework.NET 工作流产品说明书 V3.0】是柯锐特软件公司推出的一款基于.NET框架的快速信息化系统开发整合框架的工作流组件。该组件设计与研发结合了RDIFramework.NET多年的项目经验和实践,旨在提供一套高效、...
.NET快速开发整合框架是一种高效的开发工具,它集成了多种功能,旨在加速.NET应用程序的开发过程。这个框架可能包含了丰富的公共类库,提供了大量的预定义函数和模块,使得开发者无需从零开始编写代码,就能快速构建...
当时公司要建自己的内部OA系统,同时有CRM相关功能需求,为了快速开发购买的这个快速开发框架,但是基础功能不完全满足我们使用,所以我们在该框架基础上进行了优化和功能扩充; 设计理念真的不错,希望能给同行小...
1、一套基于ASP.NET MVC+EF6+Bootstrap开发出来的框架,源代码完全开源,可以帮助你解决C#以及.NET项目68%的重复工作,让开发人员远离加班。 2、使用ApacheLicense2.0协议,采用主流框架,容易上手,简单易学,学习...
.NET通用权限系统快速开发框架是一种高效且灵活的开发工具,专为构建OA(办公自动化)、ERP(企业资源规划)和CRM(客户关系管理)等应用软件系统而设计。该框架的核心在于权限管理,旨在帮助开发者快速搭建具备完整...
《ASP.NET+SQLServer网络应用系统开发与实例》是一本深度探讨如何利用ASP.NET技术和SQL Server数据库进行网络应用系统开发的专业书籍。通过光盘下载的形式,读者可以获得丰富的实例代码和教学资源,进一步提升实践...
ASP.NET Core是一个由微软开发的开源、跨平台的web应用框架,它是在.NET Core基础上构建的,用于构建高性能、模块化的互联网规模的应用程序。这个"asp.net core敏捷开发框架c#源码"提供了完整的C#源代码,适用于那些...
在超市管理系统中,Sql Server扮演着核心角色,存储商品信息、库存、销售记录等所有业务数据,确保数据的安全性和一致性。 【超市管理系统】 超市管理系统是一个集成化的软件解决方案,旨在帮助超市高效地管理日常...
【VB.NET+SQL学生管理信息系统】是一个基于Visual Basic .NET(VB.NET)编程语言和SQL数据库技术构建的简单管理系统,主要用于教育机构或学校对学生信息进行高效、便捷的管理和查询。这个系统展示了如何将前端用户...
陈表达SQL server开发程序案例:VB.NET 开发程序【学校信息系统exe.zip】 本程序应用技术:1、SQL自定义函数,减少每次使用连接过程语句, 2、使用dataset缓存表管理datagridview控件的视图 3、使用sql查询数据库...
本系统利用ADO.NET技术和SQL Server 2005数据库,实现了对学生的全面信息化管理,为教育行业的信息化进程提供了一套实用的解决方案。 ADO.NET是微软.NET Framework中的数据访问组件,它提供了与数据库交互的强大...
【标题】"asp.net MVC 快速开发框架权限管理系统"是一个专为开发者设计的高效解决方案,旨在加速Web应用程序的开发过程,特别是在构建涉及用户权限管理的项目时。它基于Microsoft的ASP.NET MVC技术栈,利用Entity ...
ASP.NET 和 SQL Server 结合构建的单选题考试系统,是教育信息化领域中常见的在线测试工具。该系统以 ASP.NET 作为开发框架,利用 SQL Server 数据库存储和管理试题、成绩等数据,实现了基本的考试与成绩处理功能。...
ASP.NET2.0+SQLServer网络应用系统开发案例精解 这是我在实习的时候购买《ASP.NET2.0+SQLServer网络应用系统开发案例精解》这本书时附送的各应用系统的源代码!~系统采用VS2005+SQLSERVER2000+C#编写!~已经通过...
平台:VS2010+,Sql Server, ASP.NET 配置更改:更改BPMS.WEB\XmlConfig\Config.xml下的数据库连接字符串 启动:VS IIS Express或建立IIS对应网站(主网站项目BPMS.WEB) 登录: 用户名/密码:admin/0000 用户名/...
【VB.NET操作SQL】是关于使用Visual Basic .NET(VB.NET)编程语言与SQL数据库进行交互的知识点。VB.NET是微软.NET框架的一部分,提供了一种强大的方式来开发桌面和Web应用程序。结合SQL,VB.NET可以用于创建数据...
本系统以VB.NET作为主要编程语言,利用Visual Studio 2005作为开发工具,结合SQL Server 2000作为数据库存储,构建了一款适用于Windows操作系统的应用。下面,我们将深入探讨该系统的各项关键知识点。 首先,VB.NET...
《ASP.NET 2.0 + SQL Server网络应用系统开发案例精解》这本书主要涵盖了使用ASP.NET 2.0技术和SQL Server数据库进行网络应用系统开发的相关知识。在这个领域,开发者需要理解如何有效地结合这两种技术来构建高效、...