CacheSection Klasa
Definicja
Ważny
Niektóre informacje dotyczą produktów przedpremierowych, które mogą zostać znacznie zmodyfikowane przed premierą. Microsoft nie udziela żadnych gwarancji, ani wyraźnych, ani domniemanych, dotyczących informacji podanych tutaj.
Konfiguruje globalne ustawienia pamięci podręcznej dla aplikacji ASP.NET. Klasa ta nie może być dziedziczona.
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
- Dziedziczenie
Przykłady
Poniższy przykład kodu przedstawia stronę i powiązany plik kodu używany do uzyskiwania CacheSection dostępu do atrybutów sekcji.
<%@ 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
Uwagi
Klasa CacheSection zapewnia sposób programowego uzyskiwania dostępu i modyfikowania <cache> sekcji pliku konfiguracji.
Funkcja buforowania ASP.NET jest implementowana przez klasę Cache . Aby uzyskać więcej informacji, zobacz Buforowanie.
Uwaga
Plik CacheSection konfiguracji może zapisywać informacje w powiązanej sekcji pliku konfiguracji zgodnie z ograniczeniami zdefiniowanymi przez właściwość AllowDefinition sekcji, której wartość to MachineToApplication. Każda próba zapisania w pliku konfiguracji na poziomie niedozwolonym w hierarchii spowoduje wyświetlenie komunikatu o błędzie wygenerowanego przez analizator. Można jednak użyć tej klasy do odczytywania informacji o konfiguracji na dowolnym poziomie w hierarchii.
Pamięć podręczna to tabela skrótów specyficzna dla aplikacji używana do przechowywania często używanych danych. Stan aplikacji i sesji jest podobny do pamięci podręcznej, stan aplikacji jest najbardziej podobny ze względu na zakres aplikacji. Jedną z największych różnic między pamięcią podręczną a mechanizmem stanu aplikacji jest to, że pamięć podręczna obsługuje zależności Te zależności umożliwiają tworzenie aplikacji, które automatycznie usuwają buforowane elementy po wystąpieniu niektórych zdarzeń.
Konstruktorów
| Nazwa | Opis |
|---|---|
| CacheSection() |
Inicjuje nowe wystąpienie klasy CacheSection. |
Właściwości
| Nazwa | Opis |
|---|---|
| CurrentConfiguration |
Pobiera odwołanie do wystąpienia najwyższego poziomu Configuration , które reprezentuje hierarchię konfiguracji, do którego należy bieżące ConfigurationElement wystąpienie. (Dziedziczone od ConfigurationElement) |
| DefaultProvider |
Pobiera lub ustawia domyślnego dostawcę. |
| DisableExpiration |
Pobiera lub ustawia wartość wskazującą, czy wygaśnięcie pamięci podręcznej jest wyłączone. |
| DisableMemoryCollection |
Pobiera lub ustawia wartość wskazującą, czy kolekcja pamięci podręcznej jest wyłączona. |
| ElementInformation |
ElementInformation Pobiera obiekt, który zawiera niezstosowalne informacje i funkcje ConfigurationElement obiektu. (Dziedziczone od ConfigurationElement) |
| ElementProperty |
ConfigurationElementProperty Pobiera obiekt reprezentujący ConfigurationElement sam obiekt. (Dziedziczone od ConfigurationElement) |
| EvaluationContext |
ContextInformation Pobiera obiekt dla ConfigurationElement obiektu. (Dziedziczone od ConfigurationElement) |
| HasContext |
Pobiera wartość wskazującą, czy CurrentConfiguration właściwość to |
| Item[ConfigurationProperty] |
Pobiera lub ustawia właściwość lub atrybut tego elementu konfiguracji. (Dziedziczone od ConfigurationElement) |
| Item[String] |
Pobiera lub ustawia właściwość, atrybut lub element podrzędny tego elementu konfiguracji. (Dziedziczone od ConfigurationElement) |
| LockAllAttributesExcept |
Pobiera kolekcję zablokowanych atrybutów. (Dziedziczone od ConfigurationElement) |
| LockAllElementsExcept |
Pobiera kolekcję zablokowanych elementów. (Dziedziczone od ConfigurationElement) |
| LockAttributes |
Pobiera kolekcję zablokowanych atrybutów. (Dziedziczone od ConfigurationElement) |
| LockElements |
Pobiera kolekcję zablokowanych elementów. (Dziedziczone od ConfigurationElement) |
| LockItem |
Pobiera lub ustawia wartość wskazującą, czy element jest zablokowany. (Dziedziczone od ConfigurationElement) |
| PercentagePhysicalMemoryUsedLimit |
Pobiera lub ustawia wartość wskazującą maksymalny procent użycia pamięci wirtualnej. |
| PrivateBytesLimit |
Pobiera lub ustawia wartość wskazującą maksymalny rozmiar przestrzeni prywatnej procesu roboczego. |
| PrivateBytesPollTime |
Pobiera lub ustawia wartość wskazującą interwał czasu między sondowaniem użycia pamięci procesu roboczego. |
| Properties |
Pobiera kolekcję właściwości. (Dziedziczone od ConfigurationElement) |
| Providers |
Pobiera kolekcję ustawień dostawcy. |
| SectionInformation |
SectionInformation Pobiera obiekt, który zawiera niezstosowalne informacje i funkcje ConfigurationSection obiektu. (Dziedziczone od ConfigurationSection) |
Metody
| Nazwa | Opis |
|---|---|
| DeserializeElement(XmlReader, Boolean) |
Odczytuje kod XML z pliku konfiguracji. (Dziedziczone od ConfigurationElement) |
| DeserializeSection(XmlReader) |
Odczytuje kod XML z pliku konfiguracji. (Dziedziczone od ConfigurationSection) |
| Equals(Object) |
Porównuje bieżące ConfigurationElement wystąpienie z określonym obiektem. (Dziedziczone od ConfigurationElement) |
| GetHashCode() |
Pobiera unikatową wartość reprezentującą bieżące ConfigurationElement wystąpienie. (Dziedziczone od ConfigurationElement) |
| GetRuntimeObject() |
Zwraca obiekt niestandardowy po przesłonięciu w klasie pochodnej. (Dziedziczone od ConfigurationSection) |
| GetTransformedAssemblyString(String) |
Zwraca przekształconą wersję określonej nazwy zestawu. (Dziedziczone od ConfigurationElement) |
| GetTransformedTypeString(String) |
Zwraca przekształconą wersję określonej nazwy typu. (Dziedziczone od ConfigurationElement) |
| GetType() |
Type Pobiera bieżące wystąpienie. (Dziedziczone od Object) |
| Init() |
ConfigurationElement Ustawia obiekt na stan początkowy. (Dziedziczone od ConfigurationElement) |
| InitializeDefault() |
Służy do inicjowania domyślnego zestawu wartości dla ConfigurationElement obiektu. (Dziedziczone od ConfigurationElement) |
| IsModified() |
Wskazuje, czy ten element konfiguracji został zmodyfikowany od czasu ostatniego zapisania lub załadowania podczas implementacji w klasie pochodnej. (Dziedziczone od ConfigurationSection) |
| IsReadOnly() |
Pobiera wartość wskazującą, czy ConfigurationElement obiekt jest tylko do odczytu. (Dziedziczone od ConfigurationElement) |
| ListErrors(IList) |
Dodaje błędy nieprawidłowej właściwości w tym ConfigurationElement obiekcie i we wszystkich podelementach do przekazanej listy. (Dziedziczone od ConfigurationElement) |
| MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Dziedziczone od Object) |
| OnDeserializeUnrecognizedAttribute(String, String) |
Pobiera wartość wskazującą, czy podczas deserializacji napotkano nieznany atrybut. (Dziedziczone od ConfigurationElement) |
| OnDeserializeUnrecognizedElement(String, XmlReader) |
Pobiera wartość wskazującą, czy podczas deserializacji napotkano nieznany element. (Dziedziczone od ConfigurationElement) |
| OnRequiredPropertyNotFound(String) |
Zgłasza wyjątek, gdy nie znaleziono wymaganej właściwości. (Dziedziczone od ConfigurationElement) |
| PostDeserialize() |
Wywoływana po deserializacji. (Dziedziczone od ConfigurationElement) |
| PreSerialize(XmlWriter) |
Wywoływane przed serializacji. (Dziedziczone od ConfigurationElement) |
| Reset(ConfigurationElement) |
Resetuje stan ConfigurationElement wewnętrzny obiektu, w tym blokady i kolekcje właściwości. (Dziedziczone od ConfigurationElement) |
| ResetModified() |
Resetuje wartość IsModified() metody w |
| SerializeElement(XmlWriter, Boolean) |
Zapisuje zawartość tego elementu konfiguracji do pliku konfiguracji po zaimplementowaniu w klasie pochodnej. (Dziedziczone od ConfigurationElement) |
| SerializeSection(ConfigurationElement, String, ConfigurationSaveMode) |
Tworzy ciąg XML zawierający nieskonwergentny widok ConfigurationSection obiektu jako pojedynczą sekcję do zapisu w pliku. (Dziedziczone od ConfigurationSection) |
| SerializeToXmlElement(XmlWriter, String) |
Zapisuje zewnętrzne tagi tego elementu konfiguracji do pliku konfiguracji po zaimplementowaniu w klasie pochodnej. (Dziedziczone od ConfigurationElement) |
| SetPropertyValue(ConfigurationProperty, Object, Boolean) |
Ustawia właściwość na określoną wartość. (Dziedziczone od ConfigurationElement) |
| SetReadOnly() |
IsReadOnly() Ustawia właściwość obiektu ConfigurationElement i wszystkich podelementów. (Dziedziczone od ConfigurationElement) |
| ShouldSerializeElementInTargetVersion(ConfigurationElement, String, FrameworkName) |
Wskazuje, czy określony element powinien być serializowany, gdy hierarchia obiektów konfiguracji jest serializowana dla określonej wersji docelowej programu .NET Framework. (Dziedziczone od ConfigurationSection) |
| ShouldSerializePropertyInTargetVersion(ConfigurationProperty, String, FrameworkName, ConfigurationElement) |
Wskazuje, czy określona właściwość powinna być serializowana, gdy hierarchia obiektów konfiguracji jest serializowana dla określonej wersji docelowej programu .NET Framework. (Dziedziczone od ConfigurationSection) |
| ShouldSerializeSectionInTargetVersion(FrameworkName) |
Wskazuje, czy bieżące ConfigurationSection wystąpienie powinno być serializowane, gdy hierarchia obiektów konfiguracji jest serializowana dla określonej wersji docelowej programu .NET Framework. (Dziedziczone od ConfigurationSection) |
| ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Dziedziczone od Object) |
| Unmerge(ConfigurationElement, ConfigurationElement, ConfigurationSaveMode) |
Modyfikuje obiekt, ConfigurationElement aby usunąć wszystkie wartości, które nie powinny być zapisywane. (Dziedziczone od ConfigurationElement) |