`

RDIFramework.NET ━ .NET快速信息化系统开发框架 记录所有操作的Sql

阅读更多

在实际开发或试运行过程中,我们有时需要查看或分析模块执行的所有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 官方微信

 

分享到:
评论

相关推荐

    rdiframework.net代码生成器 v5.1版本

    RDIFramework.NET代码生成器集代码生成、各数据库对象文档生成、数据库常用管理于一身,是软件开发者快速开发的神器。代码的生成支持基于数据库与PowerDesign设计文件生成,为企业及个人开发者能快速生成常用代码与...

    RDIFramework.NET 工作流产品说明书 V3.0.pdf

    【RDIFramework.NET 工作流产品说明书 V3.0】是柯锐特软件公司推出的一款基于.NET框架的快速信息化系统开发整合框架的工作流组件。该组件设计与研发结合了RDIFramework.NET多年的项目经验和实践,旨在提供一套高效、...

    .net内部管理系统快速开发框架

    在现代企业信息化建设中,快速开发框架成为提升效率、降低成本的关键工具。本文将深入探讨一个基于.NET技术栈的内部管理系统快速开发框架,该框架结合了Entity Framework(EF)、Autofac依赖注入容器以及EasyUI前端...

    ASP.NET+SQL Server 系统开发实例

    ASP.NET和SQL Server是开发企业级Web应用的常用技术栈,它们在构建高效、安全且可扩展的系统中发挥着关键作用。在这个"ASP.NET+SQL Server 系统开发实例"中,我们可以深入理解这两项技术如何协同工作,构建出实际的...

    《ASP.Net 2.0 + SQL Server 网络应用系统开发案例精解》

    《ASP.Net 2.0 + SQL Server 网络应用系统开发案例精解》这本书深入浅出地介绍了如何使用ASP.NET 2.0框架结合SQL Server数据库进行网络应用系统的开发。ASP.NET是微软公司推出的一种强大的Web应用程序开发平台,它...

    .Net Core快速开发框架源码

    当时公司要建自己的内部OA系统,同时有CRM相关功能需求,为了快速开发购买的这个快速开发框架,但是基础功能不完全满足我们使用,所以我们在该框架基础上进行了优化和功能扩充; 设计理念真的不错,希望能给同行小...

    快速开发框架C#源码完全开源版 基于ASP.NET MVC+EF6+Bootstrap框架等

    1、一套基于ASP.NET MVC+EF6+Bootstrap开发出来的框架,源代码完全开源,可以帮助你解决C#以及.NET项目68%的重复工作,让开发人员远离加班。 2、使用ApacheLicense2.0协议,采用主流框架,容易上手,简单易学,学习...

    信息系统开发教程(C#+SQL+ADO.NET)

    《信息系统开发教程(C#+SQL+ADO.NET)》是一本深入探讨如何使用C#编程语言、SQL数据库管理和ADO.NET技术来构建高效信息系统的专业教材。在本教程中,我们将全面了解这三个关键技术及其相互间的协同工作,以帮助开发者...

    .net+sql server图书管理系统,有数据库

    综上所述,.NET + SQL Server 图书管理系统利用C#.NET的开发效率和SQL Server的强大数据库功能,构建了一套完整的图书馆信息化解决方案。通过优化的系统设计和流程,它能有效地提升图书馆的管理水平,为读者提供更...

    VB.NET ,Sql Server 超市信息管理系统

    在超市管理系统中,Sql Server扮演着核心角色,存储商品信息、库存、销售记录等所有业务数据,确保数据的安全性和一致性。 【超市管理系统】 超市管理系统是一个集成化的软件解决方案,旨在帮助超市高效地管理日常...

    ASP.NET+SQLServer网络应用系统开发与实例(光盘下载)

    《ASP.NET+SQLServer网络应用系统开发与实例》是一本深度探讨如何利用ASP.NET技术和SQL Server数据库进行网络应用系统开发的专业书籍。通过光盘下载的形式,读者可以获得丰富的实例代码和教学资源,进一步提升实践...

    VB.NET+SQL学生管理信息系统

    【VB.NET+SQL学生管理信息系统】是一个基于Visual Basic .NET(VB.NET)编程语言和SQL数据库技术构建的简单管理系统,主要用于教育机构或学校对学生信息进行高效、便捷的管理和查询。这个系统展示了如何将前端用户...

    VB.NET 开发程序【学校信息系统源码.zip】.zip

    陈表达SQL server开发程序案例:VB.NET 开发程序【学校信息系统exe.zip】 本程序应用技术:1、SQL自定义函数,减少每次使用连接过程语句, 2、使用dataset缓存表管理datagridview控件的视图 3、使用sql查询数据库...

    asp.net mvc 快速开发框架权限管理系统

    【标题】"asp.net MVC 快速开发框架权限管理系统"是一个专为开发者设计的高效解决方案,旨在加速Web应用程序的开发过程,特别是在构建涉及用户权限管理的项目时。它基于Microsoft的ASP.NET MVC技术栈,利用Entity ...

    ASP.NET2.0+SQLServer网络应用系统开发案例精解

    ASP.NET2.0+SQLServer网络应用系统开发案例精解 这是我在实习的时候购买《ASP.NET2.0+SQLServer网络应用系统开发案例精解》这本书时附送的各应用系统的源代码!~系统采用VS2005+SQLSERVER2000+C#编写!~已经通过...

    vb.net操作sql

    【VB.NET操作SQL】是关于使用Visual Basic .NET(VB.NET)编程语言与SQL数据库进行交互的知识点。VB.NET是微软.NET框架的一部分,提供了一种强大的方式来开发桌面和Web应用程序。结合SQL,VB.NET可以用于创建数据...

    asp.net core敏捷开发框架c#源码

    ASP.NET Core是一个由微软开发的开源、跨平台的web应用框架,它是在.NET Core基础上构建的,用于构建高性能、模块化的互联网规模的应用程序。这个"asp.net core敏捷开发框架c#源码"提供了完整的C#源代码,适用于那些...

    asp.net+sql数据库学生成绩管理系统源码

    资源名:asp.net+sql数据库学生成绩管理系统源码 资源类型:程序源代码 源码说明: 基于asp.net编写的学生成绩管理系统 包含完整代码和数据库 很适合借鉴学习 适合人群:新手及有一定经验的开发人员

    vb.net+sql学生信息管理系统

    在当今信息化社会,学生信息管理系统的构建已经成为教育机构不可或缺的一部分。本项目——“VB.NET + SQL 学生信息管理系统”提供了一个全面且功能强大的解决方案,对于学习数据库编程以及实际操作具有极高的参考...

Global site tag (gtag.js) - Google Analytics