CacheSection Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Konfiguriert die globalen Cacheeinstellungen für eine ASP.NET-Anwendung. Diese Klasse kann nicht vererbt werden.
public ref class CacheSection sealed : System::Configuration::ConfigurationSection
public sealed class CacheSection : System.Configuration.ConfigurationSection
type CacheSection = class
inherit ConfigurationSection
Public NotInheritable Class CacheSection
Inherits ConfigurationSection
- Vererbung
Beispiele
Das folgende Codebeispiel zeigt eine Seite und die zugehörige Codedatei, die für den Zugriff auf die CacheSection Abschnittsattribute verwendet wird.
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ReadWriteCache.aspx.cs" Inherits="ReadWriteCache" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Read Write Application Cache</title>
</head>
<body>
<form id="form1" runat="server">
<h2>Read Write Application Cache</h2>
<asp:Label ID="Label1" Text="[Application Cache goes here.]" runat="server"></asp:Label>
<hr />
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Write Cache" />
<asp:Button ID="Button2" runat="server" onclick="Button2_Click" Text="Read Cache" />
</form>
</body>
</html>
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="ReadWriteCache.aspx.vb" Inherits="ReadWriteCache" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>Read Write Application Cache</title>
</head>
<body>
<form id="form1" runat="server">
<h2>Read Write Application Cache</h2>
<asp:Label ID="Label1" Text="[Application Cache goes here.]" runat="server"></asp:Label>
<hr />
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Write Cache" />
<asp:Button ID="Button2" runat="server" onclick="Button2_Click" Text="Read Cache" />
</form>
</body>
</html>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class ReadWriteCache : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
Label1.Text = "Application Cache goes here.";
}
protected void Button1_Click(object sender, EventArgs e)
{
// Get the application configuration file.
System.Configuration.Configuration config =
System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("~/");
System.Web.Configuration.CacheSection cacheSection =
(System.Web.Configuration.CacheSection)config.GetSection(
"system.web/caching/cache");
// Increase the PrivateBytesLimit property to 0.
cacheSection.PrivateBytesLimit =
cacheSection.PrivateBytesLimit + 10;
// Increase memory limit.
cacheSection.PercentagePhysicalMemoryUsedLimit =
cacheSection.PercentagePhysicalMemoryUsedLimit + 1;
// Increase poll time.
cacheSection.PrivateBytesPollTime =
cacheSection.PrivateBytesPollTime + TimeSpan.FromMinutes(1);
// Enable or disable memory collection.
cacheSection.DisableMemoryCollection =
!cacheSection.DisableMemoryCollection;
// Enable or disable cache expiration.
cacheSection.DisableExpiration =
!cacheSection.DisableExpiration;
// Save the configuration file.
config.Save(System.Configuration.ConfigurationSaveMode.Modified);
}
protected void Button2_Click(object sender, EventArgs e)
{
// Get the application configuration file.
System.Configuration.Configuration config =
System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("~/");
System.Web.Configuration.CacheSection cacheSection =
(System.Web.Configuration.CacheSection)config.GetSection(
"system.web/caching/cache");
// Read the cache section.
System.Text.StringBuilder buffer = new System.Text.StringBuilder();
string currentFile = cacheSection.CurrentConfiguration.FilePath;
bool dExpiration = cacheSection.DisableExpiration;
bool dMemCollection = cacheSection.DisableMemoryCollection;
TimeSpan pollTime = cacheSection.PrivateBytesPollTime;
int phMemUse = cacheSection.PercentagePhysicalMemoryUsedLimit;
long pvBytesLimit = cacheSection.PrivateBytesLimit;
string cacheEntry = String.Format("File: {0} <br/>", currentFile);
buffer.Append(cacheEntry);
cacheEntry = String.Format("Expiration Disabled: {0} <br/>", dExpiration);
buffer.Append(cacheEntry);
cacheEntry = String.Format("Memory Collection Disabled: {0} <br/>", dMemCollection);
buffer.Append(cacheEntry);
cacheEntry = String.Format("Poll Time: {0} <br/>", pollTime.ToString());
buffer.Append(cacheEntry);
cacheEntry = String.Format("Memory Limit: {0} <br/>", phMemUse.ToString());
buffer.Append(cacheEntry);
cacheEntry = String.Format("Bytes Limit: {0} <br/>", pvBytesLimit.ToString());
buffer.Append(cacheEntry);
Label1.Text = buffer.ToString();
}
}
Imports System.Collections.Generic
Imports System.Linq
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Partial Public Class ReadWriteCache
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
If Not IsPostBack Then
Label1.Text = "Application Cache goes here."
End If
End Sub
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs)
' Get the application configuration file.
Dim config As System.Configuration.Configuration =
System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("~/")
Dim cacheSection As System.Web.Configuration.CacheSection =
CType(config.GetSection("system.web/caching/cache"), System.Web.Configuration.CacheSection)
' Increase the PrivateBytesLimit property to 0.
cacheSection.PrivateBytesLimit = cacheSection.PrivateBytesLimit + 10
' Increase memory limit.
cacheSection.PercentagePhysicalMemoryUsedLimit =
cacheSection.PercentagePhysicalMemoryUsedLimit + 1
' Increase poll time.
cacheSection.PrivateBytesPollTime =
cacheSection.PrivateBytesPollTime + TimeSpan.FromMinutes(1)
' Enable or disable memory collection.
cacheSection.DisableMemoryCollection =
Not cacheSection.DisableMemoryCollection
' Enable or disable cache expiration.
cacheSection.DisableExpiration =
Not cacheSection.DisableExpiration
' Save the configuration file.
config.Save(System.Configuration.ConfigurationSaveMode.Modified)
End Sub
Protected Sub Button2_Click(ByVal sender As Object, ByVal e As EventArgs)
' Get the application configuration file.
Dim config As System.Configuration.Configuration =
System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("~/")
Dim cacheSection As System.Web.Configuration.CacheSection =
CType(config.GetSection("system.web/caching/cache"), System.Web.Configuration.CacheSection)
' Read the cache section.
Dim buffer As New System.Text.StringBuilder()
Dim currentFile As String = cacheSection.CurrentConfiguration.FilePath
Dim dExpiration As Boolean = cacheSection.DisableExpiration
Dim dMemCollection As Boolean = cacheSection.DisableMemoryCollection
Dim pollTime As TimeSpan = cacheSection.PrivateBytesPollTime
Dim phMemUse As Integer = cacheSection.PercentagePhysicalMemoryUsedLimit
Dim pvBytesLimit As Long = cacheSection.PrivateBytesLimit
Dim cacheEntry As String = String.Format("File: {0} <br/>", currentFile)
buffer.Append(cacheEntry)
cacheEntry = String.Format("Expiration Disabled: {0} <br/>", dExpiration)
buffer.Append(cacheEntry)
cacheEntry = String.Format("Memory Collection Disabled: {0} <br/>", dMemCollection)
buffer.Append(cacheEntry)
cacheEntry = String.Format("Poll Time: {0} <br/>", pollTime.ToString())
buffer.Append(cacheEntry)
cacheEntry = String.Format("Memory Limit: {0} <br/>", phMemUse.ToString())
buffer.Append(cacheEntry)
cacheEntry = String.Format("Bytes Limit: {0} <br/>", pvBytesLimit.ToString())
buffer.Append(cacheEntry)
Label1.Text = buffer.ToString()
End Sub
End Class
Hinweise
Mit der CacheSection-Klasse kann programmgesteuert auf den <cache>
-Abschnitt einer Konfigurationsdatei zugegriffen und dieser programmgesteuert geändert werden.
Die ASP.NET Zwischenspeicherungsfunktion wird von der Cache -Klasse implementiert. Weitere Informationen finden Sie unter Zwischenspeichern.
Hinweis
Der CacheSection kann Informationen in den zugehörigen Abschnitt der Konfigurationsdatei gemäß den Einschränkungen schreiben, die von der section-Eigenschaft AllowDefinition definiert werden, deren Wert ist MachineToApplication. Jeder Versuch, in eine Konfigurationsdatei auf einer Ebene zu schreiben, die in der Hierarchie nicht zulässig ist, führt zu einer Fehlermeldung, die vom Parser generiert wird. Sie können diese Klasse jedoch verwenden, um Konfigurationsinformationen auf jeder Ebene in der Hierarchie zu lesen.
Ein Cache ist eine anwendungsspezifische Hashtabelle, die zum Speichern von Daten verwendet wird, auf die häufig zugegriffen wird. Anwendungs- und Sitzungsstatus ähneln dem Cache, wobei der Anwendungszustand aufgrund des anwendungsweiten Bereichs am ähnlichsten ist. Einer der größten Unterschiede zwischen dem Cache und dem Anwendungsstatusmechanismus besteht darin, dass der Cache Abhängigkeiten unterstützt. Diese Abhängigkeiten ermöglichen es, Anwendungen zu erstellen, die zwischengespeicherte Elemente automatisch entfernen, wenn bestimmte Ereignisse auftreten.
Konstruktoren
CacheSection() |
Initialisiert eine neue Instanz der CacheSection-Klasse. |
Eigenschaften
CurrentConfiguration |
Ruft einen Verweis auf die Configuration-Instanz der obersten Ebene ab, die die Konfigurationshierarchie darstellt, zu der die aktuelle ConfigurationElement-Instanz gehört. (Geerbt von ConfigurationElement) |
DefaultProvider |
Ruft den Standardanbieter ab oder legt diesen fest. |
DisableExpiration |
Ruft einen Wert ab, der angibt, ob die Cacheablaufzeit deaktiviert ist, oder legt diesen fest. |
DisableMemoryCollection |
Ruft einen Wert ab, der angibt, ob die Cachespeichersammlung deaktiviert ist, oder legt diesen fest. |
ElementInformation |
Ruft ein ElementInformation-Objekt ab, das die nicht anpassbaren Informationen und Funktionen des ConfigurationElement-Objekts enthält. (Geerbt von ConfigurationElement) |
ElementProperty |
Ruft das ConfigurationElementProperty-Objekt ab, das das ConfigurationElement-Objekt selbst darstellt. (Geerbt von ConfigurationElement) |
EvaluationContext |
Ruft das ContextInformation-Objekt für das ConfigurationElement-Objekt ab. (Geerbt von ConfigurationElement) |
HasContext |
Ruft einen Wert ab, der angibt, ob die CurrentConfiguration-Eigenschaft |
Item[ConfigurationProperty] |
Ruft eine Eigenschaft oder ein Attribut dieses Konfigurationselements ab oder legt diese bzw. dieses fest. (Geerbt von ConfigurationElement) |
Item[String] |
Ruft eine Eigenschaft, ein Attribut oder ein untergeordnetes Element dieses Konfigurationselements ab oder legt diese(s) fest. (Geerbt von ConfigurationElement) |
LockAllAttributesExcept |
Ruft die Auflistung gesperrter Attribute ab. (Geerbt von ConfigurationElement) |
LockAllElementsExcept |
Ruft die Auflistung gesperrter Elemente ab. (Geerbt von ConfigurationElement) |
LockAttributes |
Ruft die Auflistung gesperrter Attribute ab. (Geerbt von ConfigurationElement) |
LockElements |
Ruft die Auflistung gesperrter Elemente ab. (Geerbt von ConfigurationElement) |
LockItem |
Ruft einen Wert ab, der angibt, ob das Element gesperrt ist, oder legt diesen fest. (Geerbt von ConfigurationElement) |
PercentagePhysicalMemoryUsedLimit |
Ruft einen Wert ab, der den maximalen Prozentsatz für die Auslastung des virtuellen Arbeitsspeichers angibt, oder legt diesen fest. |
PrivateBytesLimit |
Ruft ab einen Wert ab, der die maximale Größe des privaten Arbeitsprozessspeichers angibt, oder legt diesen fest. |
PrivateBytesPollTime |
Ruft einen Wert ab, der das Zeitintervall zwischen den Abrufen der Arbeitsprozessspeicherauslastung angibt, oder legt diesen fest. |
Properties |
Ruft die Auflistung von Eigenschaften ab. (Geerbt von ConfigurationElement) |
Providers |
Ruft die Sammlung der Anbietereinstellungen ab. |
SectionInformation |
Ruft ein SectionInformation-Objekt ab, das die nicht anpassbaren Informationen und Funktionen des ConfigurationSection-Objekts enthält. (Geerbt von ConfigurationSection) |
Methoden
DeserializeElement(XmlReader, Boolean) |
Liest XML aus der Konfigurationsdatei. (Geerbt von ConfigurationElement) |
DeserializeSection(XmlReader) |
Liest XML aus der Konfigurationsdatei. (Geerbt von ConfigurationSection) |
Equals(Object) |
Vergleicht die aktuelle ConfigurationElement-Instanz mit dem angegebenen Objekt. (Geerbt von ConfigurationElement) |
GetHashCode() |
Ruft einen eindeutigen Wert ab, der die aktuelle ConfigurationElement-Instanz darstellt. (Geerbt von ConfigurationElement) |
GetRuntimeObject() |
Gibt ein benutzerdefiniertes Objekt zurück, wenn es in einer abgeleiteten Klasse überschrieben wird. (Geerbt von ConfigurationSection) |
GetTransformedAssemblyString(String) |
Gibt die transformierte Version des angegebenen Assemblynamens zurück. (Geerbt von ConfigurationElement) |
GetTransformedTypeString(String) |
Gibt die transformierte Version des angegebenen Typnamens zurück. (Geerbt von ConfigurationElement) |
GetType() |
Ruft den Type der aktuellen Instanz ab. (Geerbt von Object) |
Init() |
Legt für das ConfigurationElement-Objekt den Ausgangszustand fest. (Geerbt von ConfigurationElement) |
InitializeDefault() |
Wird verwendet, um einen Standardsatz von Werten für das ConfigurationElement-Objekt zu initialisieren. (Geerbt von ConfigurationElement) |
IsModified() |
Gibt an, ob dieses Konfigurationselement geändert wurde, seit es zuletzt gespeichert oder geladen wurde, wenn es in einer abgeleiteten Klasse implementiert wurde. (Geerbt von ConfigurationSection) |
IsReadOnly() |
Ruft einen Wert ab, der angibt, ob das ConfigurationElement schreibgeschützt ist. (Geerbt von ConfigurationElement) |
ListErrors(IList) |
Fügt die Fehler über ungültige Eigenschaften in diesem ConfigurationElement-Objekt und in allen Unterelementen der übergebenen Liste hinzu. (Geerbt von ConfigurationElement) |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
OnDeserializeUnrecognizedAttribute(String, String) |
Ruft einen Wert ab, der angibt, ob während der Deserialisierung ein unbekanntes Attribut aufgetreten ist. (Geerbt von ConfigurationElement) |
OnDeserializeUnrecognizedElement(String, XmlReader) |
Ruft einen Wert ab, der angibt, ob während der Deserialisierung ein unbekanntes Element aufgetreten ist. (Geerbt von ConfigurationElement) |
OnRequiredPropertyNotFound(String) |
Löst eine Ausnahme aus, wenn eine erforderliche Eigenschaft nicht gefunden wird. (Geerbt von ConfigurationElement) |
PostDeserialize() |
Wird nach der Deserialisierung aufgerufen. (Geerbt von ConfigurationElement) |
PreSerialize(XmlWriter) |
Wird vor der Serialisierung aufgerufen. (Geerbt von ConfigurationElement) |
Reset(ConfigurationElement) |
Setzt den internen Status dieses ConfigurationElement-Objekts zurück, einschließlich der Sperren und der Eigenschaftenauflistungen. (Geerbt von ConfigurationElement) |
ResetModified() |
Setzt bei Implementierung in einer abgeleiteten Klasse den Wert der IsModified()-Methode auf |
SerializeElement(XmlWriter, Boolean) |
Schreibt bei Implementierung in einer abgeleiteten Klasse den Inhalt dieses Konfigurationselements in die Konfigurationsdatei. (Geerbt von ConfigurationElement) |
SerializeSection(ConfigurationElement, String, ConfigurationSaveMode) |
Erstellt eine XML-Zeichenfolge mit einer nicht zusammengeführten Ansicht des ConfigurationSection-Objekts als einzelnem Abschnitt, der in einer Datei geschrieben werden soll. (Geerbt von ConfigurationSection) |
SerializeToXmlElement(XmlWriter, String) |
Schreibt bei Implementierung in einer abgeleiteten Klasse die äußeren Tags dieses Konfigurationselements in die Konfigurationsdatei. (Geerbt von ConfigurationElement) |
SetPropertyValue(ConfigurationProperty, Object, Boolean) |
Legt eine Eigenschaft auf den angegebenen Wert fest. (Geerbt von ConfigurationElement) |
SetReadOnly() |
Legt die IsReadOnly()-Eigenschaft für das ConfigurationElement-Objekt und alle Unterelemente fest. (Geerbt von ConfigurationElement) |
ShouldSerializeElementInTargetVersion(ConfigurationElement, String, FrameworkName) |
Gibt an, ob das angegebene Element serialisiert werden soll, wenn die Konfigurationsobjekthierarchie für die angegebene Zielversion von .NET Framework serialisiert wird. (Geerbt von ConfigurationSection) |
ShouldSerializePropertyInTargetVersion(ConfigurationProperty, String, FrameworkName, ConfigurationElement) |
Gibt an, ob die angegebene Eigenschaft serialisiert werden soll, wenn die Konfigurationsobjekthierarchie für die angegebene Zielversion von .NET Framework serialisiert wird. (Geerbt von ConfigurationSection) |
ShouldSerializeSectionInTargetVersion(FrameworkName) |
Gibt an, ob die aktuelle ConfigurationSection Instanz serialisiert werden soll, wenn die Konfigurationsobjekthierarchie für die angegebene Zielversion von .NET Framework serialisiert wird. (Geerbt von ConfigurationSection) |
ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |
Unmerge(ConfigurationElement, ConfigurationElement, ConfigurationSaveMode) |
Ändert das ConfigurationElement-Objekt, um alle Werte zu entfernen, die nicht gespeichert werden sollen. (Geerbt von ConfigurationElement) |