asp.net緩衝-資料依賴緩衝

來源:互聯網
上載者:User

    由於項目有用到Cache這塊知識,這裡總結一下。

   在Vs2008 Vc  視窗下運行 aspnet_regsql -C "server= (local)\tadb;database=abico;uid= sa;pwd =" -ed -et -t "Events"

   會在你的Database建立一個AspNet_SqlCacheTablesForChangeNotification 這個表,還有若干個預存程序。

 

   在Web.config 中配置下緩衝的資訊

  

配置資訊

<appSettings/>
 <connectionStrings>
  <add name="testCache" connectionString="data source = 127.0.0.1;initial catalog = abico;user id = sa ;password =135246 " providerName="System.Data.SqlClient"/>
 </connectionStrings>

 

 

代碼

<system.web>
    <caching>
            <sqlCacheDependency enabled="true" pollTime="1000">
                <databases>
                    <add name="abico" connectionStringName="testCache"/>
                </databases>
            </sqlCacheDependency>

 

 

其中pollTime 是輪詢資料庫的時間,預設是1分鐘,單位毫秒。這個參數很重要,類似定時器功能,應用程式會根據這個時間定時的去輪詢你的資料庫,擷取你的table是否有更新。

 

如果不在 Web.config中配置,也可以寫在SqlCacheDependencyAdmin這個類中。

如果想對多個表進行緩衝:

1)在AspNet_SqlCacheTablesForChangeNotification表中,新增一條記錄 tabName 就是你要緩衝的表

2)SqlCacheDependencyAdmin.EnableTableForNotifications(conString, "QX_User");第一個參數是連接字串,第二個是要緩衝的表名。

主要一點是你的緩衝依賴性 要寫對錶名

SqlCacheDependency dep = new SqlCacheDependency("abico", "QX_User"); abico:資料庫名,QX_User:表名。

------------------------------------------------------

我理解的Cache 就是.net自己做好了一個定時器根據PollTime時間去輪詢資料庫,調用預存程序,知道表的AspNet_SqlCacheTablesForChangeNotification的資訊,裡面有標記ChangeID。當ChangeID改變時,有回呼函數的就觸發回呼函數,沒有的話就把現有的緩衝刪除了。

-------------------------------------------------------

DEMO下載 /Files/86188281/CacheTest.rar

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.