AggregateCacheDependency Kelas

Definisi

Menggabungkan beberapa dependensi antara item yang disimpan dalam objek aplikasi Cache ASP.NET dan array CacheDependency objek. Kelas ini tidak dapat diwariskan.

public ref class AggregateCacheDependency sealed : System::Web::Caching::CacheDependency
public sealed class AggregateCacheDependency : System.Web.Caching.CacheDependency
type AggregateCacheDependency = class
    inherit CacheDependency
Public NotInheritable Class AggregateCacheDependency
Inherits CacheDependency
Warisan
AggregateCacheDependency

Contoh

Contoh kode berikut menggunakan AggregateCacheDependency kelas untuk menambahkan DataSet, bernama XMLDataSet, ke cache yang bergantung pada file teks dan file XML.

   ' When the page is loaded, use the 
   ' AggregateCacheDependency class to make 
   ' a cached item dependent on two files.
   
   Sub Page_Load(sender As Object, e As EventArgs)
      Dim Source As DataView
   
      Source = Cache("XMLDataSet")
   
      If Source Is Nothing
             Dim DS As New DataSet
             Dim FS As FileStream
             Dim Reader As StreamReader
             Dim txtDep As CacheDependency
             Dim xmlDep As CacheDependency
             Dim aggDep As AggregateCacheDependency
   
   
             FS = New FileStream(Server.MapPath("authors.xml"),FileMode.Open,FileAccess.Read)
             Reader = New StreamReader(FS)
             DS.ReadXml(Reader)
             FS.Close()
   
             Source = new DataView(ds.Tables(0))
            ' Create two CacheDependency objects, one to a
            ' text file and the other to an XML file. 
            ' Create a CacheDependency array with these 
            ' two objects as items in the array.
             txtDep = New CacheDependency(Server.MapPath("Storage.txt"))
             xmlDep = New CacheDependency(Server.MapPath("authors.xml"))
             Dim DepArray() As CacheDependency = {txtDep, xmlDep}

             ' Create an AggregateCacheDependency object and 
             ' use the Add method to add the array to it.   
             aggDep = New AggregateCacheDependency()
             aggDep.Add(DepArray)
   
             ' Call the GetUniqueId method to generate
             ' an ID for each dependency in the array.
             msg1.Text = aggDep.GetUniqueId()
             
             ' Add the new data set to the cache with 
             ' dependencies on both files in the array.
             Cache.Insert("XMLDataSet", Source, aggDep)
             If aggDep.HasChanged = True Then
                chngMsg.Text = "The dependency changed at: " & DateTime.Now
   
             Else
                chngMsg.Text = "The dependency changed last at: " & aggDep.UtcLastModified.ToString()
             End If

   
             cacheMsg1.Text = "Dataset created explicitly"
           Else
             cacheMsg1.Text = "Dataset retrieved from cache"
           End If
   
   
             MyLiteral.Text = Source.Table.TableName
             MyDataGrid.DataSource = Source
             MyDataGrid.DataBind()
         End Sub
 

         Public Sub btn_Click(sender As Object, e As EventArgs )
   
          If (MyTextBox.Text = String.Empty) Then
             msg2.Text ="You have not changed the text file."
          Else
             msg2.Text="You added " & MyTextBox.Text & "."
   
             ' Create an instance of the StreamWriter class
             ' to write text to a file.
             Dim sw As StreamWriter
             sw = File.CreateText(Server.MapPath("Storage.txt"))
   
             ' Add some text to the file.
             sw.Write("You entered:")
             sw.WriteLine(MyTextBox.Text)
   
             ' Write arbitrary objects to the file as needed.
             sw.Write("Text added at:")
             sw.WriteLine(DateTime.Now)
             sw.WriteLine("-------------------")
             sw.Close()
          End If
        End Sub

Keterangan

Kelas AggregateCacheDependency memantau kumpulan objek dependensi sehingga ketika salah satu dari mereka berubah, item yang di-cache akan dihapus secara otomatis. Objek dalam array dapat berupa CacheDependency objek, SqlCacheDependency objek, objek kustom yang berasal dari CacheDependency, atau kombinasi apa pun dari ini.

Kelas AggregateCacheDependency berbeda dari CacheDependency kelas di dalamnya memungkinkan Anda untuk mengaitkan beberapa dependensi dari berbagai jenis dengan satu item cache. Misalnya, jika Anda membuat halaman yang mengimpor data dari tabel database SQL Server dan file XML, Anda dapat membuat objek SqlCacheDependency untuk mewakili dependensi pada tabel database dan CacheDependency untuk mewakili dependensi pada file XML. Daripada melakukan Cache.Insert panggilan metode untuk setiap dependensi, Anda dapat membuat instans AggregateCacheDependency kelas dengan setiap dependensi yang ditambahkan ke dalamnya. Anda kemudian dapat menggunakan satu Insert panggilan untuk membuat halaman bergantung pada AggregateCacheDependency instans.

Konstruktor

Nama Deskripsi
AggregateCacheDependency()

Menginisialisasi instans baru dari kelas AggregateCacheDependency.

Properti

Nama Deskripsi
HasChanged

Mendapatkan nilai yang menunjukkan apakah CacheDependency objek telah berubah.

(Diperoleh dari CacheDependency)
UtcLastModified

Mendapatkan waktu ketika dependensi terakhir diubah.

(Diperoleh dari CacheDependency)

Metode

Nama Deskripsi
Add(CacheDependency[])

Menambahkan array CacheDependency objek ke AggregateCacheDependency objek.

DependencyDispose()

Merilis sumber daya yang digunakan oleh CacheDependency kelas dan kelas apa pun yang berasal dari CacheDependency.

(Diperoleh dari CacheDependency)
Dispose()

Merilis sumber daya yang digunakan oleh CacheDependency objek.

(Diperoleh dari CacheDependency)
Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
FinishInit()

Menyelesaikan inisialisasi CacheDependency objek.

(Diperoleh dari CacheDependency)
GetFileDependencies()

Mendapatkan dependensi file.

GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()

Mendapatkan Type instans saat ini.

(Diperoleh dari Object)
GetUniqueID()

Mengambil pengidentifikasi unik untuk objek.AggregateCacheDependency

ItemRemoved()

Dipanggil ketika entri cache yang dipantau dihapus.

(Diperoleh dari CacheDependency)
KeepDependenciesAlive()

Memperbarui waktu akses terakhir setiap item cache yang bergantung pada item ini.

(Diperoleh dari CacheDependency)
MemberwiseClone()

Membuat salinan dangkal dari Objectsaat ini.

(Diperoleh dari Object)
NotifyDependencyChanged(Object, EventArgs)

Memberi tahu objek dasar CacheDependency bahwa dependensi yang diwakili oleh kelas turunan CacheDependency telah berubah.

(Diperoleh dari CacheDependency)
SetCacheDependencyChanged(Action<Object,EventArgs>)

Menambahkan metode Tindakan untuk menangani memberi tahu pihak yang tertarik dalam perubahan pada dependensi ini.

(Diperoleh dari CacheDependency)
SetUtcLastModified(DateTime)

Menandai waktu ketika dependensi terakhir diubah.

(Diperoleh dari CacheDependency)
TakeOwnership()

Memungkinkan pengguna pertama untuk mendeklarasikan kepemilikan eksklusif atas dependensi ini.

(Diperoleh dari CacheDependency)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Berlaku untuk