CacheSection Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee configureert u de globale cache-instellingen voor een ASP.NET-toepassing. Deze klasse kan niet worden overgenomen.
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
- Overname
Voorbeelden
In het volgende codevoorbeeld ziet u een pagina en het gerelateerde codebestand dat wordt gebruikt voor toegang tot de CacheSection sectiekenmerken.
<%@ 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
Opmerkingen
De CacheSection klasse biedt een manier om programmatisch toegang te krijgen tot en het <cache> gedeelte van een configuratiebestand te wijzigen.
De ASP.NET cachefunctie wordt geïmplementeerd door de klasse Cache. Zie Caching voor meer informatie.
Note
De CacheSection kan informatie naar de gerelateerde sectie van het configuratiebestand schrijven op basis van de beperkingen die zijn gedefinieerd door de sectie-eigenschap AllowDefinition waarvan de waarde is MachineToApplication. Elke poging om in een configuratiebestand te schrijven op een niveau dat niet is toegestaan in de hiërarchie, resulteert in een foutbericht dat door de parser wordt gegenereerd. U kunt deze klasse echter gebruiken om configuratiegegevens te lezen op elk niveau in de hiërarchie.
Een cache is een toepassingsspecifieke hashtabel die wordt gebruikt voor het opslaan van veelgebruikte gegevens. De toepassings- en sessiestatus zijn vergelijkbaar met de cache, de toepassingsstatus is het meest vergelijkbaar vanwege het toepassingsbrede bereik. Een van de grootste verschillen tussen de cache en het mechanisme voor de toepassingsstatus is dat de cache afhankelijkheden ondersteunt. Deze afhankelijkheden maken het mogelijk om toepassingen te bouwen die automatisch in de cache opgeslagen items verwijderen wanneer bepaalde gebeurtenissen optreden.
Constructors
| Name | Description |
|---|---|
| CacheSection() |
Initialiseert een nieuw exemplaar van de CacheSection klasse. |
Eigenschappen
| Name | Description |
|---|---|
| CurrentConfiguration |
Hiermee wordt een verwijzing opgehaald naar het exemplaar op het hoogste niveau Configuration dat de configuratiehiërarchie vertegenwoordigt waartoe het huidige ConfigurationElement exemplaar behoort. (Overgenomen van ConfigurationElement) |
| DefaultProvider |
Hiermee haalt u de standaardprovider op of stelt u deze in. |
| DisableExpiration |
Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of de vervaldatum van de cache is uitgeschakeld. |
| DisableMemoryCollection |
Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of de cachegeheugenverzameling is uitgeschakeld. |
| ElementInformation |
Hiermee haalt u een ElementInformation object op dat de niet-aanpasbare informatie en functionaliteit van het ConfigurationElement object bevat. (Overgenomen van ConfigurationElement) |
| ElementProperty |
Hiermee haalt u het ConfigurationElementProperty object op dat het ConfigurationElement object zelf vertegenwoordigt. (Overgenomen van ConfigurationElement) |
| EvaluationContext |
Hiermee haalt u het ContextInformation object voor het ConfigurationElement object op. (Overgenomen van ConfigurationElement) |
| HasContext |
Hiermee wordt een waarde opgehaald die aangeeft of de CurrentConfiguration eigenschap is |
| Item[ConfigurationProperty] |
Hiermee wordt een eigenschap of kenmerk van dit configuratie-element opgehaald of ingesteld. (Overgenomen van ConfigurationElement) |
| Item[String] |
Hiermee wordt een eigenschap, kenmerk of onderliggend element van dit configuratie-element opgehaald of ingesteld. (Overgenomen van ConfigurationElement) |
| LockAllAttributesExcept |
Hiermee haalt u de verzameling vergrendelde kenmerken op. (Overgenomen van ConfigurationElement) |
| LockAllElementsExcept |
Hiermee haalt u de verzameling vergrendelde elementen op. (Overgenomen van ConfigurationElement) |
| LockAttributes |
Hiermee haalt u de verzameling vergrendelde kenmerken op. (Overgenomen van ConfigurationElement) |
| LockElements |
Hiermee haalt u de verzameling vergrendelde elementen op. (Overgenomen van ConfigurationElement) |
| LockItem |
Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of het element is vergrendeld. (Overgenomen van ConfigurationElement) |
| PercentagePhysicalMemoryUsedLimit |
Hiermee wordt een waarde opgehaald of ingesteld die het maximumpercentage van het gebruik van het virtuele geheugen aangeeft. |
| PrivateBytesLimit |
Hiermee wordt een waarde opgehaald of ingesteld die de maximale grootte van de privéruimte voor het werkproces aangeeft. |
| PrivateBytesPollTime |
Hiermee wordt een waarde opgehaald of ingesteld die het tijdsinterval aangeeft tussen polling voor het geheugengebruik van het werkproces. |
| Properties |
Hiermee haalt u de verzameling eigenschappen op. (Overgenomen van ConfigurationElement) |
| Providers |
Hiermee haalt u de verzameling providerinstellingen op. |
| SectionInformation |
Hiermee haalt u een SectionInformation object op dat de niet-aanpasbare informatie en functionaliteit van het ConfigurationSection object bevat. (Overgenomen van ConfigurationSection) |
Methoden
| Name | Description |
|---|---|
| DeserializeElement(XmlReader, Boolean) |
Leest XML uit het configuratiebestand. (Overgenomen van ConfigurationElement) |
| DeserializeSection(XmlReader) |
Leest XML uit het configuratiebestand. (Overgenomen van ConfigurationSection) |
| Equals(Object) |
Vergelijkt het huidige ConfigurationElement exemplaar met het opgegeven object. (Overgenomen van ConfigurationElement) |
| GetHashCode() |
Hiermee haalt u een unieke waarde op die het huidige ConfigurationElement exemplaar vertegenwoordigt. (Overgenomen van ConfigurationElement) |
| GetRuntimeObject() |
Retourneert een aangepast object wanneer dit wordt overschreven in een afgeleide klasse. (Overgenomen van ConfigurationSection) |
| GetTransformedAssemblyString(String) |
Retourneert de getransformeerde versie van de opgegeven assemblynaam. (Overgenomen van ConfigurationElement) |
| GetTransformedTypeString(String) |
Retourneert de getransformeerde versie van de opgegeven typenaam. (Overgenomen van ConfigurationElement) |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| Init() |
Hiermee stelt u het object in op de ConfigurationElement oorspronkelijke status. (Overgenomen van ConfigurationElement) |
| InitializeDefault() |
Wordt gebruikt om een standaardset waarden voor het ConfigurationElement object te initialiseren. (Overgenomen van ConfigurationElement) |
| IsModified() |
Geeft aan of dit configuratie-element is gewijzigd sinds het voor het laatst is opgeslagen of geladen wanneer dit is geïmplementeerd in een afgeleide klasse. (Overgenomen van ConfigurationSection) |
| IsReadOnly() |
Hiermee wordt een waarde opgehaald die aangeeft of het ConfigurationElement object het kenmerk Alleen-lezen heeft. (Overgenomen van ConfigurationElement) |
| ListErrors(IList) |
Voegt de fouten met ongeldige eigenschappen in dit ConfigurationElement object en in alle subelementen toe aan de doorgegeven lijst. (Overgenomen van ConfigurationElement) |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| OnDeserializeUnrecognizedAttribute(String, String) |
Hiermee wordt een waarde opgehaald die aangeeft of er een onbekend kenmerk wordt aangetroffen tijdens deserialisatie. (Overgenomen van ConfigurationElement) |
| OnDeserializeUnrecognizedElement(String, XmlReader) |
Hiermee wordt een waarde opgehaald die aangeeft of er een onbekend element wordt aangetroffen tijdens deserialisatie. (Overgenomen van ConfigurationElement) |
| OnRequiredPropertyNotFound(String) |
Genereert een uitzondering wanneer een vereiste eigenschap niet wordt gevonden. (Overgenomen van ConfigurationElement) |
| PostDeserialize() |
Gebeld na ontserialisatie. (Overgenomen van ConfigurationElement) |
| PreSerialize(XmlWriter) |
Aangeroepen vóór serialisatie. (Overgenomen van ConfigurationElement) |
| Reset(ConfigurationElement) |
Hiermee stelt u de interne status van het ConfigurationElement object opnieuw in, inclusief de vergrendelingen en de eigenschappenverzamelingen. (Overgenomen van ConfigurationElement) |
| ResetModified() |
Hiermee stelt u de waarde van de methode IsModified() opnieuw in wanneer deze |
| SerializeElement(XmlWriter, Boolean) |
Schrijft de inhoud van dit configuratie-element naar het configuratiebestand wanneer deze wordt geïmplementeerd in een afgeleide klasse. (Overgenomen van ConfigurationElement) |
| SerializeSection(ConfigurationElement, String, ConfigurationSaveMode) |
Hiermee maakt u een XML-tekenreeks met een niet-gekoppelde weergave van het ConfigurationSection object als één sectie om naar een bestand te schrijven. (Overgenomen van ConfigurationSection) |
| SerializeToXmlElement(XmlWriter, String) |
Hiermee schrijft u de buitenste tags van dit configuratie-element naar het configuratiebestand wanneer het wordt geïmplementeerd in een afgeleide klasse. (Overgenomen van ConfigurationElement) |
| SetPropertyValue(ConfigurationProperty, Object, Boolean) |
Hiermee stelt u een eigenschap in op de opgegeven waarde. (Overgenomen van ConfigurationElement) |
| SetReadOnly() |
Hiermee stelt u de IsReadOnly() eigenschap voor het ConfigurationElement object en alle subelementen in. (Overgenomen van ConfigurationElement) |
| ShouldSerializeElementInTargetVersion(ConfigurationElement, String, FrameworkName) |
Geeft aan of het opgegeven element moet worden geserialiseerd wanneer de hiërarchie van het configuratieobject wordt geserialiseerd voor de opgegeven doelversie van het .NET Framework. (Overgenomen van ConfigurationSection) |
| ShouldSerializePropertyInTargetVersion(ConfigurationProperty, String, FrameworkName, ConfigurationElement) |
Geeft aan of de opgegeven eigenschap moet worden geserialiseerd wanneer de configuratieobjecthiërarchie wordt geserialiseerd voor de opgegeven doelversie van het .NET Framework. (Overgenomen van ConfigurationSection) |
| ShouldSerializeSectionInTargetVersion(FrameworkName) |
Hiermee wordt aangegeven of de huidige ConfigurationSection-instantie moet worden geserialiseerd wanneer de hiërarchie van het configuratieobject wordt geserialiseerd voor de opgegeven doelversie van het .NET Framework. (Overgenomen van ConfigurationSection) |
| ToString() |
Retourneert een tekenreeks die het huidige object vertegenwoordigt. (Overgenomen van Object) |
| Unmerge(ConfigurationElement, ConfigurationElement, ConfigurationSaveMode) |
Hiermee wijzigt u het ConfigurationElement object om alle waarden te verwijderen die niet mogen worden opgeslagen. (Overgenomen van ConfigurationElement) |