HttpResponseSubstitutionCallback HttpResponseSubstitutionCallback HttpResponseSubstitutionCallback HttpResponseSubstitutionCallback Delegate

Definizione

Rappresenta il metodo che gestisce la sostituzione successiva alla memorizzazione nella cache.Represents the method that handles post-cache substitution.

public delegate System::String ^ HttpResponseSubstitutionCallback(HttpContext ^ context);
public delegate string HttpResponseSubstitutionCallback(HttpContext context);
type HttpResponseSubstitutionCallback = delegate of HttpContext -> string
Public Delegate Function HttpResponseSubstitutionCallback(context As HttpContext) As String 

Parametri

context
HttpContext HttpContext HttpContext HttpContext

Classe HttpContext contenente le informazioni sulla richiesta HTTP della pagina con il controllo che richiede la sostituzione successiva alla memorizzazione nella cache.The HttpContext that contains the HTTP request information for the page with the control that requires post-cache substitution.

Valore restituito

System.String

Contenuto inserito nella risposta memorizzata nella cache prima di essere inviata al client.The content inserted into the cached response before being sent to the client.

Ereditarietà
HttpResponseSubstitutionCallbackHttpResponseSubstitutionCallbackHttpResponseSubstitutionCallbackHttpResponseSubstitutionCallback

Esempi

Nell'esempio di codice seguente viene illustrato come aggiungere Substitution un controllo a livello di codice a una pagina Web memorizzata nella cache di output.The following code example demonstrates how to add a Substitution control programmatically to an output-cached Web page. Quando la pagina viene caricata, la data e l'ora correnti vengono visualizzate all'utente in un'etichetta.When the page loads, the current date and time are displayed to the user in a label. Questa sezione della pagina viene memorizzata nella cache e aggiornata ogni 60 secondi.This section of the page is cached and updated every 60 seconds. Quando il Substitution controllo viene eseguito, viene chiamato il GetCurrentDateTime metodo, che deve corrispondere alla firma per il HttpResponseSubstitutionCallback delegato.When the Substitution control executes, it calls the GetCurrentDateTime method, which must match the signature for the HttpResponseSubstitutionCallback delegate. La stringa restituita dal GetCurrentDateTime metodo viene visualizzata all'utente.The string that is returned by the GetCurrentDateTime method is displayed to the user. Questa sezione della pagina non viene memorizzata nella cache e viene aggiornata ogni volta che la pagina viene aggiornata.This section of the page is not cached and is updated each time the page is refreshed. La MethodName proprietàSubstitution del controllo ottiene o imposta il nome del metodo di callback.The MethodName property of the Substitution control gets or sets the name of the callback method.

<%@ outputcache duration="60" varybyparam="none" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server" language="C#">  
  
  void Page_Load(object sender, System.EventArgs e)
  {
    // Programmatically create a Substitution control.
    Substitution Substitution1 = new Substitution();
    
    // Specify the callback method.
    Substitution1.MethodName = "GetCurrentDateTime";
    
    // Add the Substitution control to the controls
    // collection of PlaceHolder1.
    PlaceHolder1.Controls.Add (Substitution1);        

    // Display the current date and time in the label.
    // Output caching applies to this section of the page.
    CachedDateLabel.Text = DateTime.Now.ToString();    
  }
  
  // The Substitution control calls this method to retrieve
  // the current date and time. This section of the page
  // is exempt from output caching. 
  public static string GetCurrentDateTime (HttpContext context)
  {
    return DateTime.Now.ToString ();
  }
  
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
  <title>Substitution Class Example</title>
</head>
<body>
  <form id="Form1" runat="server">
  
    <h3>Substitution Constructor Example</h3>  
    
    <p>This section of the page is not cached:</p>
    <asp:placeholder id="PlaceHolder1"
      runat="Server">
    </asp:placeholder>
    
    <br />
    
    <p>This section of the page is cached:</p>
    
    <asp:label id="CachedDateLabel"
      runat="Server">
    </asp:label>
    
    <br /><br />
    
    <asp:button id="RefreshButton"
      text="Refresh Page"
      runat="Server">
    </asp:button>     

  </form>
</body>
</html>
<%@ outputcache duration="60" varybyparam="none" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server" language="VB">  
  
  Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
    ' Programmatically create a Substitution control.
    Dim Substitution1 As New Substitution
    
    ' Specify the callback method.
    Substitution1.MethodName = "GetCurrentDateTime"
    
    ' Add the Substitution control to the controls
    ' collection of PlaceHolder1.
    PlaceHolder1.Controls.Add(Substitution1)
    
    ' Display the current date and time in the label.
    ' Output caching applies to this section of the page.
    CachedDateLabel.Text = DateTime.Now.ToString()
  End Sub
  
  ' The Substitution control calls this method to retrieve
  ' the current date and time. This section of the page
  ' is exempt from output caching. 
  Shared Function GetCurrentDateTime(ByVal context As HttpContext) As String
    Return DateTime.Now.ToString()
  End Function
  
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
  <title>Substitution Constructor Example</title>
</head>
<body>
  <form id="Form1" runat="server">
  
    <h3>Substitution Constructor Example</h3>  
    
    <p>This section of the page is not cached:</p>
    <asp:placeholder id="PlaceHolder1"
      runat="Server">
    </asp:placeholder>
    
    <br />
    
    <p>This section of the page is cached:</p>
    
    <asp:label id="CachedDateLabel"
      runat="Server">
    </asp:label>
    
    <br /><br />
    
    <asp:button id="RefreshButton"
      text="Refresh Page"
      runat="Server">
    </asp:button>     

  </form>
</body>
</html>

Commenti

Il HttpResponseSubstitutionCallback delegato, in combinazione con il WriteSubstitution metodo, viene usato per il rendering del contenuto post-cache Substitution per AdRotator i controlli e.The HttpResponseSubstitutionCallback delegate, in combination with the WriteSubstitution method, is used for rendering post-cache content for the Substitution and AdRotator controls.

Per il Substitution controllo, utilizzare la MethodName proprietà per specificare il nome del metodo di callback da richiamare quando viene Substitution eseguito il controllo.For the Substitution control, use the MethodName property to specify the name of the callback method to invoke when the Substitution control executes. Il metodo di callback specificato deve essere un metodo statico nella pagina o nel controllo utente che contiene il Substitution controllo.The callback method that you specify must be a static method on the page or on the user control that contains the Substitution control. La firma per il metodo di callback deve corrispondere alla firma di HttpResponseSubstitutionCallback un delegato che accetta HttpContext un parametro e restituisce una stringa.The signature for the callback method must match the signature for an HttpResponseSubstitutionCallback delegate that takes an HttpContext parameter and returns a string.

Per il AdRotator controllo, il rendering è indipendente dalla memorizzazione nella cache della pagina, a meno che non venga fornito AdCreated un gestore eventi per l'evento.For the AdRotator control, rendering is independent of the page caching unless an event handler is provided for the AdCreated event. Se non AdCreated è presente alcun gestore eventi, per eseguire il rendering del contenuto viene usata AdRotator la sostituzione post-cache.If no AdCreated event handler is present, post-cache substitution is used to render the AdRotator content.

Metodi di estensione

GetMethodInfo(Delegate) GetMethodInfo(Delegate) GetMethodInfo(Delegate) GetMethodInfo(Delegate)

Ottiene un oggetto che rappresenta il metodo rappresentato dal delegato specificato.Gets an object that represents the method represented by the specified delegate.

Si applica a

Vedi anche