參考:
l l
l l
sqldependency監聽的sql語句有很多限制。參考:
我有乙個需求:用sql1監聽table_a,但是需要的結果是sql2(table_a和table_b的outer join
的sql語句)
。一直以為只要簡單在
onchangeeventhandler託管函式中,不執行sql1,直接執行sql2。但是測試總是不成功。後來嘗試了幾次才發現:
sqldependency
啟用監聽
sql1
語句後,如果不執行被監聽語句
sql1
,那麼就不能執行其他
sql語句。
下面是我的**示例。
在 default.aspx中新增兩個控制項:gridview1, lbldate
對應的defualt.aspx.cs檔案**:
public partialclass _default : system.web.ui.page
datatable dt =(datatable)cache["tabledate"];
gridview1.datasource= dt;
gridview1.databind();
lbldate.text= updatetime.tostring();}}
privatestring getlistensql()
privatestring getselectsql()
privatevoid getselectdata()
cache["tabledate"]= dt;
updatetime = datetime.now;}}
}privatevoid getdata()
}getselectdata();
}void dep_onchange(object sender, sqlnotificationeventargs e)
}
使用SqlDependency進行快取
快取是每個系統都必定涉及到的功能,一般的快取有乙個難題 什麼時候清除?如asp.net中的cache可以設定乙個過期時間,但設定多久合適呢?長了浪費,短了就失去快取的意義了。使用sqldependency進行快取則可以解決這個問題。sqldependency是.net2.0封裝的乙個型別,當然要配合...
關於SqlDependency的學習
使用 sqldependency 檢測更改 1 定義或引入資料庫連線字串sqlstr,並配置config檔案中資料庫連線 2 初始 中傳入連線字串,啟動基於資料庫的監聽 sqldependency.start sqlstr update1 3 寫update1 方法 建立sqlconnection和...
使用SqlDependency進行快取
快取是每個系統都必定涉及到的功能,一般的快取有乙個難題 什麼時候清除?如asp.net中的cache可以設定乙個過期時間,但設定多久合適呢?長了浪費,短了就失去快取的意義了。使用sqldependency進行快取則可以解決這個問題。sqldependency是.net2.0封裝的乙個型別,當然要配合...