HOW TO: Migliorare le prestazioni per il caching di pagine in ASP.NET

Traduzione articoli Traduzione articoli
Identificativo articolo: 315896 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

In questa pagina

Sommario

In questo articolo viene illustrato come migliorare le prestazioni delle applicazioni ASP.NET memorizza nella cache intera le pagine ASP.NET con la direttiva @ OutputCache della pagina. È inoltre possibile la direttiva di pagina @ OutputCache per memorizzare nella cache parti specifiche di una pagina ASP.NET, anche se questo articolo non dimostrato l'implementazione.

Requisiti

Nell'elenco seguente sono indicati hardware, software, infrastruttura di rete e i service pack è necessario:
  • Microsoft Visual Studio .NET
  • Microsoft Internet Information Server (IIS) 4.0 o di Microsoft Internet Information Services (IIS) 5.0
In questo articolo si presume la conoscenza dei seguenti argomenti:
  • Applicazioni Web
  • Microsoft ASP.NET (informazioni in lingua inglese)

Descrizione della tecnica

Quando si memorizzano nella cache informazioni, inserire le informazioni nel memoria. In genere, quando IIS riceve una richiesta per una pagina, IIS legge la pagina dal disco rigido e quindi invia la pagina. In alcuni casi, IIS possibile archiviare automaticamente le informazioni in memoria per migliorare le prestazioni. La direttiva @ OutputCache consente di mantenere una pagina in memoria, anche se i criteri che IIS utilizza per determinare le informazioni che contiene in memoria non rientra in tale pagina.

Ad esempio, le pagine che accedono a un database sono eseguire nuovamente ogni volta che si passa alla pagina per ottenere i dati più recenti. Quando si utilizza la direttiva @ OutputCache , la pagina viene conservata in memoria con i risultati di una query al database fino alla scadenza del periodo di tempo specificato. Di conseguenza, è possibile utilizzare la direttiva @ OutputCache per evitare l'esecuzione di query del database ogni volta che un utente accede alla pagina. Questo è molto utile per i dati che non vengono modificati spesso.

Creazione di un'applicazione Web ASP.NET che utilizza @ OutputCache

In questa sezione, creato un'applicazione Web ASP.NET che utilizza la direttiva di pagina @ OutputCache per memorizzare nella cache la pagina per un periodo di tempo specifico.
  1. Attenersi alla seguente procedura per creare una nuova applicazione Web ASP.NET in Visual Basic. NET:
    1. Aprire Visual Studio NET..
    2. Scegliere Nuovo dal menu file , quindi progetto .
    3. Nella finestra di dialogo Nuovo progetto scegliere Progetti di Visual Basic in Tipi progetto , quindi Applicazione Web ASP.NET in modelli .
  2. Passare alla visualizzazione HTML della finestra WebForm1.aspx e quindi aggiungere la seguente direttiva immediatamente dopo la direttiva @ Page :
    <%@ OutputCache Duration="10" VaryByParam="none" %>
    						
    il codice imposta l'attributo di durata della direttiva @ OutputCache di 10 secondi, in modo che il contenuto della pagina viene memorizzate nella cache per 10 secondi. Inoltre, l'attributo VaryByParam contenga un elenco delimitato da punti e virgola di stringhe che è possibile utilizzare per variare la cache di output in base alle variabili che l'utente definisce. Questa funzionalità è oltre l'ambito di questo articolo, in modo che il codice precedente imposta VaryByParam su Nessuno .
  3. Nella visualizzazione HTML di WebForm1.aspx, aggiungere il seguente codice fra i tag <form> apertura e di chiusura per aggiungere uncontrollo etichetta al form:
    <asp:Label>
    Last cached: <%Response.Write(Now())%>
    </asp:Label>
    						
    è utilizzare l'etichetta per visualizzare l'ora dell'ultimo la pagina è stata caricata. Il valore di questa etichetta consigliabile modificare solo una volta ogni 10 secondi, indipendentemente da quante volte la pagina viene aggiornata.
  4. Nel menu file , fare clic su Salva .
  5. Dal menu Genera scegliere Genera soluzione .
  6. Fare clic con il pulsante destro del mouse sulla pagina e quindi fare clic su Visualizza nel browser . Si noti che viene visualizzata un'etichetta, che visualizza l'ora corrente.
  7. Aggiornare la pagina più volte. Si noti che l'etichetta modificata solo dopo il periodo di tempo 10 secondi.

Elenco completo del codice

<%@ Page Language="vb" AutoEventWireup="false" Codebehind="WebForm1.aspx.vb" Inherits="WebApplication1.WebForm1"%>
<%@ OutputCache Duration="10" VaryByParam="none" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
    <head>
        <title>WebForm1</title>
        <meta name="GENERATOR" content="Microsoft Visual Studio.NET 7.0">
        <meta name="CODE_LANGUAGE" content="Visual Basic 7.0">
        <meta name="vs_defaultClientScript" content="JavaScript">
        <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
    </head>
    <body MS_POSITIONING="GridLayout">
        <form id="Form1" method="post" runat="server">
        <asp:Label>
            Last Cached: <%Response.Write(Now())%>
        </asp:Label>
        </form>
    </body>
</html>
				
Nota : potrebbe essere necessario modificare l'attributo Inherits nella riga di codice riportato di seguito come necessario per fare riferimento al nome del progetto e Web Form:
<%@ Page Language="vb" AutoEventWireup="false" Codebehind="WebForm1.aspx.vb" Inherits="WebApplication1.WebForm1"%>
				
attualmente il codice si presuppone che il progetto è denominato WebApplication1 e la che in Web Form è denominato WebForm1.

Verifica del funzionamento

  1. Consente di aprire più finestre del browser.
  2. Nella finestra di ogni finestra, selezionare la pagina aspx come se trattasse di un utente finale. Si noti che tutte le finestre contemporaneamente per la durata di 10 secondi, anche se non visualizzare la pagina nello stesso momento.
  3. Dopo 10 secondi, selezionare o aggiornare la pagina aspx. Si noti che tutte le finestre di aggiornare l'ora.



Riferimenti

Per ulteriori informazioni, vedere i seguenti siti Web Microsoft (informazioni in lingua inglese):
Ottimizzazione di ASP.NET
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconaspoptimization.asp

Funzioni della cache in ASP.NET
http://msdn2.microsoft.com/en-us/library/xsbfdd8c(vs.71).aspx

Inserimento nella cache di pagine ASP.NET
http://msdn2.microsoft.com/en-us/library/06bh14hk(vs.71).aspx

@ OutputCache
http://msdn2.microsoft.com/en-us/library/hdxfb6cy(vs.71).aspx

Proprietà

Identificativo articolo: 315896 - Ultima modifica: giovedì 31 maggio 2007 - Revisione: 3.6
Le informazioni in questo articolo si applicano a:
  • Microsoft ASP.NET 1.1
  • Microsoft ASP.NET 1.0
Chiavi: 
kbmt kbcaching kbhowtomaster kbio kbperformance kbwebforms KB315896 KbMtit
Traduzione automatica articoli
Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 315896
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com