天天看点

ASP.NET 2.0里轻松获取数据库连接统计数据

asp.net2.0中的sqlconnection多了一个statisticsenabled属性和resetstatistics()、retrievestatistics()两个方法,用于获取sqlserver的连接统计数据。

<%@importnamespace="system.data"%>

<%@importnamespace="system.data.sqlclient"%>

<%@pagelanguage="c#"%>

<scriptrunat="server">

voidpage_load(objectsender,eventargse)

{

stringconnstring="northwind的连接串";

sqlconnectionconn=newsqlconnection(connstring);

conn.statisticsenabled=true;

conn.resetstatistics();

conn.open();

sqlcommandcmd=newsqlcommand("select*fromorders",conn);

sqldatareaderreader=cmd.executereader();

reader.close();

conn.close();

hashtableht=(hashtable)conn.retrievestatistics();

foreach(stringkeyinht.keys)

label1.text+="key:"+key+"="+ht[key]+"<br/>";

}

</script>

<html>

<headid="head1"runat="server">

<title>untitledpage</title>

</head>

<body>

<formid="form1"runat="server"autocomplete="on">

<asp:labelid="label1"runat="server"text=""></asp:label>

</form>

</body>

</html>

运行后的结果就是sqlserver连接统计数据结果:

key:networkservertime=0

key:bytesreceived=156913

key:unpreparedexecs=1

key:sumresultsets=1

key:selectcount=1

key:preparedexecs=0

key:connectiontime=30

key:executiontime=30

key:prepares=0

key:bufferssent=1

key:selectrows=830

key:serverroundtrips=1

key:cursoropens=0

key:transactions=0

key:bytessent=48

key:buffersreceived=20

key:idurows=0

key:iducount=0