AggregateCacheDependency Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
bir ASP.NET uygulamasının Cache nesnesinde depolanan bir öğe ile bir nesne dizisi CacheDependency arasında birden çok bağımlılığı birleştirir. Bu sınıf devralınamaz.
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
- Devralma
Örnekler
Aşağıdaki kod örneği, bir metin dosyasına ve XML DataSetdosyasına bağımlı önbelleğe adlı XMLDataSet
bir eklemek için sınıfını kullanırAggregateCacheDependency.
' 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
Açıklamalar
AggregateCacheDependency sınıfı bağımlılık nesnelerinin bir koleksiyonunu izler, böylece herhangi biri değiştiğinde önbelleğe alınan öğe otomatik olarak kaldırılır. Dizideki nesneler nesneler, nesneler, SqlCacheDependency içinden CacheDependencytüretilen özel nesneler veya bunların herhangi bir bileşimi olabilirCacheDependency.
sınıfı, AggregateCacheDependency farklı türlerdeki CacheDependency birden çok bağımlılığı tek bir önbelleğe alınmış öğeyle ilişkilendirmenize olanak sağladığından sınıfından farklıdır. Örneğin, SQL Server veritabanı tablosundan ve XML dosyasından verileri içeri aktaran bir sayfa oluşturursanız, veritabanı tablosundaki bir SqlCacheDependency bağımlılığı ve XML dosyasındaki bağımlılığı temsil eden bir CacheDependency nesnesi oluşturabilirsiniz. Her bağımlılık için bir Cache.Insert yöntem çağrısı yapmak yerine, her bağımlılığın eklendiği sınıfın AggregateCacheDependency bir örneğini oluşturabilirsiniz. Ardından sayfayı örneğe bağımlı AggregateCacheDependency hale getirmek için tek Insert bir çağrı kullanabilirsiniz.
Oluşturucular
AggregateCacheDependency() |
AggregateCacheDependency sınıfının yeni bir örneğini başlatır. |
Özellikler
HasChanged |
Nesnenin CacheDependency değişip değişmediğini belirten bir değer alır. (Devralındığı yer: CacheDependency) |
UtcLastModified |
Bağımlılığın en son değiştirildiği zamanı alır. (Devralındığı yer: CacheDependency) |
Yöntemler
Add(CacheDependency[]) |
Nesneye AggregateCacheDependency bir nesne dizisi CacheDependency ekler. |
DependencyDispose() |
sınıfı tarafından CacheDependency kullanılan kaynakları ve öğesinden CacheDependencytüretilen tüm sınıfları serbest bırakır. (Devralındığı yer: CacheDependency) |
Dispose() |
nesnesi tarafından CacheDependency kullanılan kaynakları serbest bırakır. (Devralındığı yer: CacheDependency) |
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
FinishInit() |
Nesnenin başlatılmasını CacheDependency tamamlar. (Devralındığı yer: CacheDependency) |
GetFileDependencies() |
Dosya bağımlılıklarını alır. |
GetFileDependencies() |
Dosya bağımlılıklarını alır. (Devralındığı yer: CacheDependency) |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
GetUniqueID() |
Nesne için AggregateCacheDependency benzersiz bir tanımlayıcı alır. |
ItemRemoved() |
İzlenen önbellek girdisi kaldırıldığında çağrılır. (Devralındığı yer: CacheDependency) |
KeepDependenciesAlive() |
Bu öğeye bağlı olan her önbellek öğesinin son erişim zamanını güncelleştirir. (Devralındığı yer: CacheDependency) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
NotifyDependencyChanged(Object, EventArgs) |
Türetilmiş CacheDependency bir sınıf tarafından temsil edilen bağımlılığın değiştiğini temel CacheDependency nesneye bildirir. (Devralındığı yer: CacheDependency) |
SetCacheDependencyChanged(Action<Object,EventArgs>) |
İlgili tarafa bu bağımlılıktaki değişiklikleri bildirmeyi işlemek için bir Eylem yöntemi ekler. (Devralındığı yer: CacheDependency) |
SetUtcLastModified(DateTime) |
Bağımlılığın en son değiştiği zamanı işaretler. (Devralındığı yer: CacheDependency) |
TakeOwnership() |
İlk kullanıcının bu bağımlılığın özel sahipliğini bildirmesine izin verir. (Devralındığı yer: CacheDependency) |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |