IT猫扑网:您身边最放心的安全下载站! 最新更新|软件分类|软件专题|手机版|论坛转贴|软件发布

您当前所在位置: 首页网络编程.Net编程 → ASP.NET中显示Linq To SQL输出的SQL语句

ASP.NET中显示Linq To SQL输出的SQL语句

时间:2015-06-28 00:00:00 来源:IT猫扑网 作者:网管联盟 我要评论(0)

最近在使用Linq To SQL的时候,为了了解不同Linq语句对性能造成的不同影响,需要获得Linq To SQL生成的SQL语句。

如果是在桌面程序中,只需要

_context.Log = Console.Out;

即可在控制台输出SQL语句。可是在ASP.NET中又该怎么办呢?

这时我想起了StringWriter。用它就可以代替Console.Out帮我们接收输出的日志,保存在一个StringBuilder里。

于是构造一个辅助类:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.IO;

using System.Text;


namespace Clowwindy.Models

{

public static class LogHelper

{

public static StringBuilder Log = new StringBuilder();

public static TextWriter In = new StringWriter(Log);

public static string GetAllLog()

{

In.Flush();

return Log.ToString();

}

public static void Clean()

{

Log = new StringBuilder();

In = new StringWriter(Log);

}

}

}


再添加一个页面log.aspx,用来显示日志:

onclick="btn_Clean_Click"/>

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

using Clowwindy.Models;

#p#副标题#e#
namespace Clowwindy

{

public partial class Log : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

if (Request.UserHostAddress != "127.0.0.1")

{

Response.End();

return;

}

Literal1.Text = LogHelper.GetAllLog().Replace("\n","\n
");

}


protected void btn_Clean_Click(object sender, EventArgs e)

{

LogHelper.Clean();

Literal1.Text = null;

}

}

}


最后在所有new DataContext的地方

加上_context.Log = LogHelper.In:

 

public Repository()

{

_context = new TDataContext();

_context.Log = LogHelper.In;

}

打开log.aspx,即可看到之前执行的SQL语句。

关键词标签:ASP.NET,SQL语句

相关阅读

文章评论
发表评论

热门文章 诛仙3飞升任务怎么做-诛仙3飞升任务流程最新2022 诛仙3飞升任务怎么做-诛仙3飞升任务流程最新2022 钟离圣遗物推荐-原神钟离圣遗物词条 钟离圣遗物推荐-原神钟离圣遗物词条 解决方法:应用程序“DEFAULT WEB SITE”中的服务器错误 解决方法:应用程序“DEFAULT WEB SITE”中的服务器错误 使用aspnet_regiis.exe 重新注册.NET Framework 使用aspnet_regiis.exe 重新注册.NET Framework

相关下载

    人气排行 诛仙3飞升任务怎么做-诛仙3飞升任务流程最新2022 asp.net表单提交方法GET\POST 在ASP.NET中如何判断用户IE浏览器的版本 Asp.net中messagebox的实现方法 Asp.net中的web.config配置 在ASP.NET MVC中实现大文件异步上传 asp.net获取URL和IP地址 FileUpload上传多文件出现错误的解决方法