CacheSection Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Configura le impostazioni della cache globale per un'applicazione ASP.NET. La classe non può essere ereditata.
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
- Ereditarietà
Esempio
L'esempio di codice seguente mostra una pagina e il file di codice correlato usato per accedere agli attributi della CacheSection sezione.
<%@ 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
Commenti
La CacheSection classe consente di accedere e modificare a livello di codice la <cache> sezione di un file di configurazione.
La funzionalità di memorizzazione nella cache ASP.NET viene implementata dalla classe Cache. Per altre informazioni, vedere Memorizzazione nella cache.
Note
CacheSection Può scrivere informazioni nella sezione correlata del file di configurazione in base alle restrizioni definite dalla proprietà AllowDefinition della sezione il cui valore è MachineToApplication. Qualsiasi tentativo di scrittura in un file di configurazione a un livello non consentito nella gerarchia genererà un messaggio di errore generato dal parser. Tuttavia, è possibile usare questa classe per leggere le informazioni di configurazione a qualsiasi livello della gerarchia.
Una cache è una tabella hash specifica dell'applicazione usata per archiviare i dati a cui si accede di frequente. Lo stato dell'applicazione e della sessione è simile alla cache, ovvero lo stato dell'applicazione è il più simile, a causa dell'ambito a livello di applicazione. Una delle principali differenze tra la cache e il meccanismo di stato dell'applicazione è che la cache supporta le dipendenze Queste dipendenze consentono di compilare applicazioni che rimuovono automaticamente gli elementi memorizzati nella cache quando si verificano determinati eventi.
Costruttori
| Nome | Descrizione |
|---|---|
| CacheSection() |
Inizializza una nuova istanza della classe CacheSection. |
Proprietà
| Nome | Descrizione |
|---|---|
| CurrentConfiguration |
Ottiene un riferimento all'istanza di Configuration di primo livello che rappresenta la gerarchia di configurazione a cui appartiene l'istanza di ConfigurationElement corrente. (Ereditato da ConfigurationElement) |
| DefaultProvider |
Ottiene o imposta il provider predefinito. |
| DisableExpiration |
Ottiene o imposta un valore che indica se la scadenza della cache è disabilitata. |
| DisableMemoryCollection |
Ottiene o imposta un valore che indica se la raccolta di memoria della cache è disabilitata. |
| ElementInformation |
Ottiene un oggetto ElementInformation che contiene le informazioni e le funzionalità non personalizzabili dell'oggetto ConfigurationElement. (Ereditato da ConfigurationElement) |
| ElementProperty |
Ottiene l'oggetto ConfigurationElementProperty che rappresenta l'oggetto ConfigurationElement stesso. (Ereditato da ConfigurationElement) |
| EvaluationContext |
Ottiene l'oggetto ContextInformation per l'oggetto ConfigurationElement. (Ereditato da ConfigurationElement) |
| HasContext |
Ottiene un valore che indica se la proprietà CurrentConfiguration è |
| Item[ConfigurationProperty] |
Ottiene o imposta una proprietà o un attributo di questo elemento di configurazione. (Ereditato da ConfigurationElement) |
| Item[String] |
Ottiene o imposta una proprietà, un attributo o un elemento figlio di questo elemento di configurazione. (Ereditato da ConfigurationElement) |
| LockAllAttributesExcept |
Ottiene la raccolta di attributi bloccati. (Ereditato da ConfigurationElement) |
| LockAllElementsExcept |
Ottiene la raccolta di elementi bloccati. (Ereditato da ConfigurationElement) |
| LockAttributes |
Ottiene la raccolta di attributi bloccati. (Ereditato da ConfigurationElement) |
| LockElements |
Ottiene la raccolta di elementi bloccati. (Ereditato da ConfigurationElement) |
| LockItem |
Ottiene o imposta un valore che indica se l'elemento è bloccato. (Ereditato da ConfigurationElement) |
| PercentagePhysicalMemoryUsedLimit |
Ottiene o imposta un valore che indica la percentuale massima di utilizzo della memoria virtuale. |
| PrivateBytesLimit |
Ottiene o imposta un valore che indica la dimensione massima dello spazio privato del processo di lavoro. |
| PrivateBytesPollTime |
Ottiene o imposta un valore che indica l'intervallo di tempo tra il polling per l'utilizzo della memoria del processo di lavoro. |
| Properties |
Ottiene la raccolta di proprietà. (Ereditato da ConfigurationElement) |
| Providers |
Ottiene la raccolta delle impostazioni del provider. |
| SectionInformation |
Ottiene un SectionInformation oggetto che contiene le informazioni e le funzionalità non personalizzabili dell'oggetto ConfigurationSection . (Ereditato da ConfigurationSection) |
Metodi
| Nome | Descrizione |
|---|---|
| DeserializeElement(XmlReader, Boolean) |
Legge il codice XML dal file di configurazione. (Ereditato da ConfigurationElement) |
| DeserializeSection(XmlReader) |
Legge il codice XML dal file di configurazione. (Ereditato da ConfigurationSection) |
| Equals(Object) |
Confronta l'istanza corrente ConfigurationElement con l'oggetto specificato. (Ereditato da ConfigurationElement) |
| GetHashCode() |
Ottiene un valore univoco che rappresenta l'istanza corrente ConfigurationElement . (Ereditato da ConfigurationElement) |
| GetRuntimeObject() |
Restituisce un oggetto personalizzato quando ne viene eseguito l'override in una classe derivata. (Ereditato da ConfigurationSection) |
| GetTransformedAssemblyString(String) |
Restituisce la versione trasformata del nome dell'assembly specificato. (Ereditato da ConfigurationElement) |
| GetTransformedTypeString(String) |
Restituisce la versione trasformata del nome del tipo specificato. (Ereditato da ConfigurationElement) |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| Init() |
Imposta l'oggetto ConfigurationElement sullo stato iniziale. (Ereditato da ConfigurationElement) |
| InitializeDefault() |
Utilizzato per inizializzare un set predefinito di valori per l'oggetto ConfigurationElement. (Ereditato da ConfigurationElement) |
| IsModified() |
Indica se questo elemento di configurazione è stato modificato dopo l'ultimo salvataggio o caricamento quando implementato in una classe derivata. (Ereditato da ConfigurationSection) |
| IsReadOnly() |
Ottiene un valore che indica se l'oggetto ConfigurationElement è di sola lettura. (Ereditato da ConfigurationElement) |
| ListErrors(IList) |
Aggiunge gli errori di proprietà non validi in questo oggetto ConfigurationElement e in tutti i sottoelementi all'elenco passato. (Ereditato da ConfigurationElement) |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| OnDeserializeUnrecognizedAttribute(String, String) |
Ottiene un valore che indica se viene rilevato un attributo sconosciuto durante la deserializzazione. (Ereditato da ConfigurationElement) |
| OnDeserializeUnrecognizedElement(String, XmlReader) |
Ottiene un valore che indica se durante la deserializzazione viene rilevato un elemento sconosciuto. (Ereditato da ConfigurationElement) |
| OnRequiredPropertyNotFound(String) |
Genera un'eccezione quando non viene trovata una proprietà obbligatoria. (Ereditato da ConfigurationElement) |
| PostDeserialize() |
Chiamato dopo la deserializzazione. (Ereditato da ConfigurationElement) |
| PreSerialize(XmlWriter) |
Chiamato prima della serializzazione. (Ereditato da ConfigurationElement) |
| Reset(ConfigurationElement) |
Reimposta lo stato interno dell'oggetto ConfigurationElement , inclusi i blocchi e gli insiemi di proprietà. (Ereditato da ConfigurationElement) |
| ResetModified() |
Reimposta il valore del IsModified() metodo su |
| SerializeElement(XmlWriter, Boolean) |
Scrive il contenuto di questo elemento di configurazione nel file di configurazione quando implementato in una classe derivata. (Ereditato da ConfigurationElement) |
| SerializeSection(ConfigurationElement, String, ConfigurationSaveMode) |
Crea una stringa XML contenente una visualizzazione non archiviata dell'oggetto ConfigurationSection come singola sezione da scrivere in un file. (Ereditato da ConfigurationSection) |
| SerializeToXmlElement(XmlWriter, String) |
Scrive i tag esterni di questo elemento di configurazione nel file di configurazione quando implementato in una classe derivata. (Ereditato da ConfigurationElement) |
| SetPropertyValue(ConfigurationProperty, Object, Boolean) |
Imposta una proprietà sul valore specificato. (Ereditato da ConfigurationElement) |
| SetReadOnly() |
Imposta la IsReadOnly() proprietà per l'oggetto ConfigurationElement e tutti i sottoelementi. (Ereditato da ConfigurationElement) |
| ShouldSerializeElementInTargetVersion(ConfigurationElement, String, FrameworkName) |
Indica se l'elemento specificato deve essere serializzato quando la gerarchia degli oggetti di configurazione viene serializzata per la versione di destinazione specificata di .NET Framework. (Ereditato da ConfigurationSection) |
| ShouldSerializePropertyInTargetVersion(ConfigurationProperty, String, FrameworkName, ConfigurationElement) |
Indica se la proprietà specificata deve essere serializzata quando la gerarchia degli oggetti di configurazione viene serializzata per la versione di destinazione specificata di .NET Framework. (Ereditato da ConfigurationSection) |
| ShouldSerializeSectionInTargetVersion(FrameworkName) |
Indica se l'istanza corrente di ConfigurationSection deve essere serializzata quando la gerarchia degli oggetti di configurazione viene serializzata per la versione di destinazione specificata di .NET Framework. (Ereditato da ConfigurationSection) |
| ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
| Unmerge(ConfigurationElement, ConfigurationElement, ConfigurationSaveMode) |
Modifica l'oggetto ConfigurationElement per rimuovere tutti i valori che non devono essere salvati. (Ereditato da ConfigurationElement) |