佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > .net頁(yè)面訪問(wèn)次數(shù)統(tǒng)計(jì)實(shí)現(xiàn)原理與代碼

.net頁(yè)面訪問(wèn)次數(shù)統(tǒng)計(jì)實(shí)現(xiàn)原理與代碼

熱門(mén)標(biāo)簽:服務(wù)器配置 Mysql連接數(shù)設(shè)置 團(tuán)購(gòu)網(wǎng)站 Linux服務(wù)器 銀行業(yè)務(wù) 阿里云 電子圍欄 科大訊飛語(yǔ)音識(shí)別系統(tǒng)

數(shù)據(jù)庫(kù)準(zhǔn)備:建立一個(gè)表total里面數(shù)據(jù)項(xiàng)為totals類(lèi)型為varchar 50
.net語(yǔ)言環(huán)境:C#
global.asax里的代碼

復(fù)制代碼 代碼如下:

%@ Import Namespace="System.Data" %>
%@ Import Namespace="System.Data.SqlClient" %>
script language="C#" runat="server">
string strSelect;
SqlConnection conPubs;
SqlDataAdapter dadPubs;
DataSet dstTitles;
DataRow drowTitle;
void Session_Start(Object sender , EventArgs e)
{
if ( Application[ "SessionCount" ] == null ) {
    Application[ "SessionCount" ] = 0;
    strSelect = "SELECT totals From total";
    conPubs = new SqlConnection(@"Server=localhost;Integrated Security=SSPI;Database=test");
    dadPubs = new SqlDataAdapter(strSelect, conPubs);
    dstTitles = new DataSet();
    dadPubs.Fill(dstTitles, "total");
    drowTitle = dstTitles.Tables["total"].Rows[0];
    Application[ "SessionCount" ]=System.Convert.ToInt32(drowTitle["totals"].ToString().Trim());
}
}
void Session_End() {
    Application["SessionCount"] = 0;  
}
/script>

SessionCount.aspx里的代碼
復(fù)制代碼 代碼如下:

void Page_Load(Object sender , EventArgs e)
{
    int total = 0;
    string strSelect;
    SqlConnection conPubs;
    //要執(zhí)行某項(xiàng)數(shù)據(jù)操作要用SqlCommand方式調(diào)用
    SqlCommand cmdSql;
    //為了防止同文檔里的其他頁(yè)面在訪問(wèn)時(shí)也進(jìn)行累加運(yùn)算
    int intHits = 0;
    intHits = (int)Application["SessionCount"];
    intHits += 1;
    Application["SessionCount"] = intHits;
    lblSessionCount.Text = Application[ "SessionCount" ].ToString();
    total = (int)Application["SessionCount"];
    strSelect = "update total set totals= @total";
    conPubs = new SqlConnection(@"Server=localhost;Integrated Security=SSPI;Database=test");
    cmdSql = new SqlCommand(strSelect, conPubs);
    cmdSql.Parameters.Add("@total", total);
    conPubs.Open();
    cmdSql.ExecuteNonQuery();
    conPubs.Close();
}

上段代碼有個(gè)小問(wèn)題,就是過(guò)了一段時(shí)間后,Application["SessionCount"]的值會(huì)變成0,而且由于前面設(shè)置了一個(gè)初始的0,也會(huì)連帶的把數(shù)據(jù)庫(kù)里原來(lái)保存的值更新為0起始.
更改后
global.asax
復(fù)制代碼 代碼如下:

%@ Import Namespace="System.Data" %>
%@ Import Namespace="System.Data.SqlClient" %>
script language="C#" runat="server">
string strSelect;
SqlConnection conPubs;
SqlDataAdapter dadPubs;
DataSet dstTitles;
DataRow drowTitle;
void Session_Start(Object sender , EventArgs e)
{
if ( Application[ "SessionCount" ] == null ) {
    Application[ "SessionCount" ] = 0;
    strSelect = "SELECT totals From total";
    conPubs = new SqlConnection(@"Server=localhost;Integrated Security=SSPI;Database=test");
    dadPubs = new SqlDataAdapter(strSelect, conPubs);
    dstTitles = new DataSet();
    dadPubs.Fill(dstTitles, "total");
    drowTitle = dstTitles.Tables["total"].Rows[0];
    Application[ "SessionCount" ]=System.Convert.ToInt32(drowTitle["totals"].ToString().Trim());
}
}
void Session_End() {
    Application["SessionCount"] = null;  
}
/script>

SessionCount.aspx
復(fù)制代碼 代碼如下:

script language="C#" runat="server">
void Page_Load(Object sender , EventArgs e)
{
    int total = 0;
    string strSelect;
    SqlConnection conPubs;
    //要執(zhí)行某項(xiàng)數(shù)據(jù)操作要用SqlCommand方式調(diào)用
    SqlCommand cmdSql;
    //為了防止同文檔里的其他頁(yè)面在訪問(wèn)時(shí)也進(jìn)行累加運(yùn)算
    int intHits = 0;
    intHits = (int)Application["SessionCount"];
    intHits += 1;
    total = intHits;
    lblSessionCount.Text = intHits.ToString();
     strSelect = "update total set totals= @total";
    conPubs = new SqlConnection(@"Server=localhost;Integrated Security=SSPI;Database=test");
    cmdSql = new SqlCommand(strSelect, conPubs);
    cmdSql.Parameters.Add("@total", total);
    conPubs.Open();
    cmdSql.ExecuteNonQuery();
    conPubs.Close();
    Application["SessionCount"] = null;
}
/script>

您可能感興趣的文章:
  • 獲取php頁(yè)面執(zhí)行時(shí)間,數(shù)據(jù)庫(kù)讀寫(xiě)次數(shù),函數(shù)調(diào)用次數(shù)等(THINKphp)
  • java字符串比較獲取字符串出現(xiàn)次數(shù)的示例
  • c#字符串查找某詞出現(xiàn)的次數(shù)及索引
  • Python統(tǒng)計(jì)列表中的重復(fù)項(xiàng)出現(xiàn)的次數(shù)的方法
  • php計(jì)算數(shù)組相同值出現(xiàn)次數(shù)的代碼(array_count_values)
  • JS實(shí)現(xiàn)在線統(tǒng)計(jì)一個(gè)頁(yè)面內(nèi)鼠標(biāo)點(diǎn)擊次數(shù)的方法
  • python統(tǒng)計(jì)字符串中指定字符出現(xiàn)次數(shù)的方法
  • java發(fā)送短信系列之限制日發(fā)送次數(shù)
  • C++計(jì)算每個(gè)字符出現(xiàn)的次數(shù)
  • C# winform實(shí)現(xiàn)登陸次數(shù)限制

標(biāo)簽:衢州 萍鄉(xiāng) 衡水 廣元 大理 蚌埠 棗莊 江蘇

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《.net頁(yè)面訪問(wèn)次數(shù)統(tǒng)計(jì)實(shí)現(xiàn)原理與代碼》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢(xún)

    • 400-1100-266
    阜康市| 壶关县| 云梦县| 电白县| 武鸣县| 郁南县| 栖霞市| 东至县| 平谷区| 夏津县| 凤凰县| 大城县| 金昌市| 崇明县| 阿克苏市| 安达市| 武鸣县| 阿拉尔市| 闻喜县| 分宜县| 江陵县| 若尔盖县| 武胜县| 沅江市| 临沂市| 泸西县| 金川县| 兴安县| 沾化县| 平乡县| 志丹县| 始兴县| 乡宁县| 裕民县| 汕头市| 嫩江县| 黎平县| 锡林浩特市| 威信县| 大洼县| 连云港市|