HttpResponse 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.
Incapsula le informazioni sulla risposta HTTP da un'operazione ASP.NET.
public ref class HttpResponse sealed
public sealed class HttpResponse
type HttpResponse = class
Public NotInheritable Class HttpResponse
- Ereditarietà
-
HttpResponse
Esempio
L'esempio seguente disegna tre rettangoli sovrapposti quando viene richiesta la pagina. Il codice inizia impostando la ContentType proprietà su image/jpeg, in modo che l'intera pagina venga eseguito il rendering come immagine JPEG. Il codice chiama quindi il Clear metodo per assicurarsi che non venga inviato alcun contenuto extraneo con questa risposta. Successivamente, il codice imposta la BufferOutput proprietà su true in modo che la pagina venga completamente elaborata prima che venga inviata al client di richiesta. Vengono quindi creati due oggetti usati per disegnare i rettangoli: un Bitmap oggetto e .Graphics Le variabili create nella pagina vengono usate come coordinate per disegnare i rettangoli e una stringa visualizzata all'interno del rettangolo più grande.
Quando vengono disegnati i tre rettangoli e la stringa visualizzata all'interno di essi, l'oggetto Bitmap viene salvato nell'oggetto Stream associato OutputStream alla proprietà e il relativo formato è impostato su JPEG. Il codice chiama i Dispose metodi e Dispose per rilasciare le risorse usate dai due oggetti di disegno. Infine, il codice chiama il Flush metodo per inviare la risposta memorizzata nel buffer al client richiedente.
Nota
Nel codice l'oggetto HttpResponse viene definito dalla parola chiave Response
. Ad esempio, Response.Clear()
fa riferimento al HttpResponse.Clear metodo . La Page classe ha una proprietà denominata Response che espone l'istanza corrente di HttpResponse.
<%@ Page Language="C#" %>
<%@ import Namespace="System.Drawing" %>
<%@ import Namespace="System.Drawing.Imaging" %>
<%@ import Namespace="System.Drawing.Drawing2D" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
private void Page_Load(object sender, EventArgs e)
{
// <snippet2>
// Set the page's content type to JPEG files
// and clears all content output from the buffer stream.
Response.ContentType = "image/jpeg";
Response.Clear();
// Buffer response so that page is sent
// after processing is complete.
Response.BufferOutput = true;
// </snippet2>
// Create a font style.
Font rectangleFont = new Font(
"Arial", 10, FontStyle.Bold);
// Create integer variables.
int height = 100;
int width = 200;
// Create a random number generator and create
// variable values based on it.
Random r = new Random();
int x = r.Next(75);
int a = r.Next(155);
int x1 = r.Next(100);
// Create a bitmap and use it to create a
// Graphics object.
Bitmap bmp = new Bitmap(
width, height, PixelFormat.Format24bppRgb);
Graphics g = Graphics.FromImage(bmp);
g.SmoothingMode = SmoothingMode.AntiAlias;
g.Clear(Color.LightGray);
// Use the Graphics object to draw three rectangles.
g.DrawRectangle(Pens.White, 1, 1, width-3, height-3);
g.DrawRectangle(Pens.Aquamarine, 2, 2, width-3, height-3);
g.DrawRectangle(Pens.Black, 0, 0, width, height);
// Use the Graphics object to write a string
// on the rectangles.
g.DrawString(
"ASP.NET Samples", rectangleFont,
SystemBrushes.WindowText, new PointF(10, 40));
// Apply color to two of the rectangles.
g.FillRectangle(
new SolidBrush(
Color.FromArgb(a, 255, 128, 255)),
x, 20, 100, 50);
g.FillRectangle(
new LinearGradientBrush(
new Point(x, 10),
new Point(x1 + 75, 50 + 30),
Color.FromArgb(128, 0, 0, 128),
Color.FromArgb(255, 255, 255, 240)),
x1, 50, 75, 30);
// <snippet3>
// Save the bitmap to the response stream and
// convert it to JPEG format.
bmp.Save(Response.OutputStream, ImageFormat.Jpeg);
// Release memory used by the Graphics object
// and the bitmap.
g.Dispose();
bmp.Dispose();
// Send the output to the client.
Response.Flush();
// </snippet3>
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
</form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ import Namespace="System.Drawing" %>
<%@ import Namespace="System.Drawing.Imaging" %>
<%@ import Namespace="System.Drawing.Drawing2D" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Private Sub Page_Load(sender As Object, e As EventArgs)
' <snippet2>
' Set the page's content type to JPEG files
' and clears all content output from the buffer stream.
Response.ContentType = "image/jpeg"
Response.Clear()
' Buffer response so that page is sent
' after processing is complete.
Response.BufferOutput = True
' </snippet2>
' Create a font style.
Dim rectangleFont As New Font( _
"Arial", 10, FontStyle.Bold)
' Create integer variables.
Dim height As Integer = 100
Dim width As Integer = 200
' Create a random number generator and create
' variable values based on it.
Dim r As New Random()
Dim x As Integer = r.Next(75)
Dim a As Integer = r.Next(155)
Dim x1 As Integer = r.Next(100)
' Create a bitmap and use it to create a
' Graphics object.
Dim bmp As New Bitmap( _
width, height, PixelFormat.Format24bppRgb)
Dim g As Graphics = Graphics.FromImage(bmp)
g.SmoothingMode = SmoothingMode.AntiAlias
g.Clear(Color.LightGray)
' Use the Graphics object to draw three rectangles.
g.DrawRectangle(Pens.White, 1, 1, width - 3, height - 3)
g.DrawRectangle(Pens.Aquamarine, 2, 2, width - 3, height - 3)
g.DrawRectangle(Pens.Black, 0, 0, width, height)
' Use the Graphics object to write a string
' on the rectangles.
g.DrawString("ASP.NET Samples", rectangleFont, SystemBrushes.WindowText, New PointF(10, 40))
' Apply color to two of the rectangles.
g.FillRectangle( _
New SolidBrush( _
Color.FromArgb(a, 255, 128, 255)), _
x, 20, 100, 50)
g.FillRectangle( _
New LinearGradientBrush( _
New Point(x, 10), _
New Point(x1 + 75, 50 + 30), _
Color.FromArgb(128, 0, 0, 128), _
Color.FromArgb(255, 255, 255, 240)), _
x1, 50, 75, 30)
' <snippet3>
' Save the bitmap to the response stream and
' convert it to JPEG format.
bmp.Save(Response.OutputStream, ImageFormat.Jpeg)
' Release memory used by the Graphics object
' and the bitmap.
g.Dispose()
bmp.Dispose()
' Send the output to the client.
Response.Flush()
' </snippet3>
End Sub 'Page_Load
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
</form>
</body>
</html>
Commenti
I metodi e le proprietà della HttpResponse classe vengono esposti tramite la Response proprietà delle HttpApplicationclassi , HttpContext, Pagee UserControl .
I metodi seguenti della HttpResponse classe sono supportati solo negli scenari postback e non negli scenari di postback asincroni:
- BinaryWrite
- Clear
- ClearContent
- ClearHeaders
- Close
- End
- Flush
- TransmitFile
- Write
- WriteFile
- WriteSubstitution
Gli aggiornamenti a pagina parziale sono abilitati quando si usano UpdatePanel i controlli per aggiornare le aree selezionate di una pagina anziché aggiornare l'intera pagina con un post indietro. Per altre informazioni, vedere Panoramica del controllo UpdatePanel e Panoramica del rendering di pagine parziali.
Costruttori
HttpResponse(TextWriter) |
Inizializza una nuova istanza della classe HttpResponse. |
Proprietà
Buffer |
Ottiene o imposta un valore che indica se memorizzare l'output nel buffer e inviarlo al termine dell'elaborazione dell'intera risposta. |
BufferOutput |
Ottiene o imposta un valore che indica se memorizzare l'output nel buffer e inviarlo al termine dell'elaborazione dell'intera pagina. |
Cache |
Ottiene i criteri di memorizzazione nella cache di una pagina Web (tempo di scadenza, impostazioni di privacy, clausole di variazione). |
CacheControl |
Ottiene o imposta l'intestazione HTTP |
Charset |
Ottiene o imposta il set di caratteri HTTP del flusso di output. |
ClientDisconnectedToken |
Ottiene un oggetto CancellationToken che viene attivato in caso di disconnessione del client. |
ContentEncoding |
Ottiene o imposta il set di caratteri HTTP del flusso di output. |
ContentType |
Ottiene o imposta il tipo MIME HTTP del flusso di output. |
Cookies |
Ottiene la raccolta di cookie di risposta. |
Expires |
Ottiene o imposta il numero di minuti dopo i quali una pagina inserita nella cache di un browser scade. Se l'utente torna alla stessa pagina prima che scada, viene visualizzata la versione memorizzata nella cache. Expires viene fornito per supportare la compatibilità con le versioni precedenti di ASP. |
ExpiresAbsolute |
Ottiene o imposta la data e l'ora assolute in cui rimuovere le informazioni memorizzate dalla cache. ExpiresAbsolute viene fornito per supportare la compatibilità con le versioni precedenti di ASP. |
Filter |
Ottiene o imposta un oggetto filtro di wrapping usato per modificare il corpo dell'entità HTTP prima della trasmissione. |
HeaderEncoding |
Ottiene o imposta un oggetto Encoding che rappresenta la codifica per il flusso di output dell'intestazione corrente. |
Headers |
Ottiene la raccolta di intestazioni di risposta. |
HeadersWritten |
Ottiene un valore che indica se le intestazioni delle risposte sono state scritte. |
IsClientConnected |
Viene fornito un valore che indica se il client è ancora connesso al server. |
IsRequestBeingRedirected |
Ottiene un valore booleano che indica se il client è in fase di trasferimento a una nuova posizione. |
Output |
Consente l'output del testo verso il flusso di risposta HTTP in uscita. |
OutputStream |
Consente l'output binario verso il corpo del contenuto HTTP in uscita. |
RedirectLocation |
Ottiene o imposta il valore dell'intestazione |
Status |
Imposta la riga |
StatusCode |
Ottiene o imposta il codice di stato HTTP dell'output restituito al client. |
StatusDescription |
Ottiene o imposta la stringa di stato HTTP dell'output restituito al client. |
SubStatusCode |
Ottiene o imposta un valore che qualifica il codice di stato della risposta. |
SupportsAsyncFlush |
Ottiene un valore che indica se la connessione supporta le operazioni di scaricamento asincrone. |
SuppressContent |
Ottiene o imposta un valore che indica se inviare il contenuto HTTP al client. |
SuppressDefaultCacheControlHeader |
Ottiene o imposta un valore che indica se eliminare l'intestazione predefinita |
SuppressFormsAuthenticationRedirect |
Ottiene o imposta un valore che specifica se il reindirizzamento di autenticazione basata su form alla pagina di accesso deve essere eliminato. |
TrySkipIisCustomErrors |
Ottiene o imposta un valore che specifica se gli errori personalizzati di IIS 7.0 sono disabilitati. |
Metodi
AddCacheDependency(CacheDependency[]) |
Associa un set di dipendenze della cache alla risposta per semplificare l'invalidamento della risposta se è stata memorizzata nella cache di output e le dipendenze specificate vengono modificate. |
AddCacheItemDependencies(ArrayList) |
Rende la validità di una risposta memorizzata nella cache dipendente da altri elementi della cache. |
AddCacheItemDependencies(String[]) |
Rende la validità di un elemento memorizzato nella cache dipendente da un altro elemento della cache. |
AddCacheItemDependency(String) |
Rende la validità di una risposta memorizzata nella cache dipendente da un altro elemento della cache. |
AddFileDependencies(ArrayList) |
Aggiunge un gruppo di nomi file alla raccolta dei nomi file da cui dipende la risposta corrente. |
AddFileDependencies(String[]) |
Aggiunge una matrice di nomi file alla raccolta dei nomi file da cui dipende la risposta corrente. |
AddFileDependency(String) |
Consente di aggiungere un singolo nome di file all'insieme dei nomi di file da cui dipende la risposta corrente. |
AddHeader(String, String) |
Aggiunge un'intestazione HTTP al flusso di output. AddHeader(String, String) viene fornito per supportare la compatibilità con le versioni precedenti di ASP. |
AddOnSendingHeaders(Action<HttpContext>) |
Registra un callback che verrà richiamato dal runtime ASP.NET immediatamente prima che le intestazioni di risposta vengano inviate per questa richiesta. |
AppendCookie(HttpCookie) |
Aggiunge un cookie HTTP alla raccolta di cookie intrinseca. |
AppendHeader(String, String) |
Aggiunge un'intestazione HTTP al flusso di output. |
AppendToLog(String) |
Aggiunge informazioni di log personalizzate nel file di log IIS (Internet Information Services). |
ApplyAppPathModifier(String) |
Aggiunge un ID sessione al percorso virtuale, se la sessione utilizza lo stato di sessione Cookieless e restituisce il percorso combinato. Se non viene utilizzato lo stato di sessione Cookieless il metodo ApplyAppPathModifier(String) restituisce il percorso virtuale originale. |
BeginFlush(AsyncCallback, Object) |
Invia al client la risposta attualmente memorizzata nel buffer. |
BinaryWrite(Byte[]) |
Scrive una stringa di caratteri binari nel flusso di output HTTP. |
Clear() |
Cancella tutto l'output di contenuto dal flusso del buffer. |
ClearContent() |
Cancella tutto l'output di contenuto dal flusso del buffer. |
ClearHeaders() |
Cancella tutte le intestazioni dal flusso del buffer. |
Close() |
Chiude la connessione socket a un client. |
DisableKernelCache() |
Disabilita la memorizzazione nella cache del kernel per la risposta corrente. |
DisableUserCache() |
Disabilita la memorizzazione nella cache in modalità utente di IIS per la risposta. |
End() |
Invia al client tutto l'output attualmente memorizzato nel buffer, interrompe l'esecuzione della pagina e genera l'evento EndRequest. |
EndFlush(IAsyncResult) |
Completa un'operazione di svuotamento asincrona. |
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
Flush() |
Invia al client tutto l'output attualmente memorizzato nel buffer. |
FlushAsync() |
Invia in modo asincrono al client tutto l'output attualmente memorizzato nel buffer. |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
Pics(String) |
Aggiunge un'intestazione HTTP |
PushPromise(String) |
Supporta le applicazioni che inviano promesse push ai client HTTP 2.0. Per altre informazioni, vedere HTTP/2 Specification Section 8.2: Server Push (Specifica HTTP/2, sezione 8.2: push del server). |
PushPromise(String, String, NameValueCollection) |
Supporta le applicazioni che inviano promesse push ai client HTTP 2.0. Per altre informazioni, vedere HTTP/2 Specification Section 8.2: Server Push (Specifica HTTP/2, sezione 8.2: push del server). |
Redirect(String) |
Reindirizza una richiesta a un nuovo URL e specifica il nuovo URL. |
Redirect(String, Boolean) |
Reindirizza un client a un nuovo URL. Specifica il nuovo URL e se l'esecuzione della pagina corrente deve terminare. |
RedirectPermanent(String) |
Esegue un reindirizzamento permanente dall'URL richiesto all'URL specificato. |
RedirectPermanent(String, Boolean) |
Esegue un reindirizzamento permanente dall'URL richiesto all'URL specificato e fornisce l'opzione per completare la risposta. |
RedirectToRoute(Object) |
Reindirizza una richiesta a un nuovo URL tramite valori di parametri di route. |
RedirectToRoute(RouteValueDictionary) |
Reindirizza una richiesta a un nuovo URL tramite valori di parametri di route. |
RedirectToRoute(String) |
Reindirizza una richiesta a un nuovo URL tramite un nome di route. |
RedirectToRoute(String, Object) |
Reindirizza una richiesta a un nuovo URL tramite valori di parametri di route e un nome di route. |
RedirectToRoute(String, RouteValueDictionary) |
Reindirizza una richiesta a un nuovo URL tramite valori di parametri di route e un nome di route. |
RedirectToRoutePermanent(Object) |
Esegue un reindirizzamento permanente da un URL richiesto a un nuovo URL tramite valori di parametri di route. |
RedirectToRoutePermanent(RouteValueDictionary) |
Esegue un reindirizzamento permanente da un URL richiesto a un nuovo URL tramite valori di parametri di route. |
RedirectToRoutePermanent(String) |
Esegue un reindirizzamento permanente da un URL richiesto a un nuovo URL tramite un nome di route. |
RedirectToRoutePermanent(String, Object) |
Esegue un reindirizzamento permanente da un URL richiesto a un nuovo URL tramite i valori di parametri di route e il nome di route corrispondenti al nuovo URL. |
RedirectToRoutePermanent(String, RouteValueDictionary) |
Esegue un reindirizzamento permanente da un URL richiesto a un nuovo URL tramite valori di parametri di route e un nome di route. |
RemoveOutputCacheItem(String) |
Rimuove dalla cache tutti gli elementi memorizzati associati al provider della cache di output predefinito. Il metodo è statico. |
RemoveOutputCacheItem(String, String) |
Usa il provider della cache di output specificato per rimuovere tutti gli elementi della cache di output associati al percorso specificato. |
SetCookie(HttpCookie) |
Poiché il metodo HttpResponse.SetCookie è solo per uso interno, non è possibile chiamarlo nel codice. In alternativa, è possibile chiamare il metodo HttpResponse.Cookies.Set, come illustrato nell'esempio seguente. |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
TransmitFile(String) |
Scrive il file specificato direttamente in un flusso di output di risposta HTTP senza memorizzarlo nel buffer. |
TransmitFile(String, Int64, Int64) |
Scrive la parte di file specificata direttamente in un flusso di output di risposta HTTP senza memorizzarla nel buffer. |
Write(Char) |
Scrive un carattere in un flusso di output di risposta HTTP. |
Write(Char[], Int32, Int32) |
Scrive una matrice di caratteri in un flusso di output di risposta HTTP. |
Write(Object) |
Scrive un oggetto Object in un flusso della risposta HTTP. |
Write(String) |
Scrive una stringa in un flusso di output di risposta HTTP. |
WriteFile(IntPtr, Int64, Int64) |
Scrive il file specificato direttamente in un flusso di output di risposta HTTP. |
WriteFile(String) |
Scrive il contenuto del file specificato direttamente in un flusso di output di risposta HTTP come blocco file. |
WriteFile(String, Boolean) |
Scrive il contenuto del file specificato direttamente in un flusso di output di risposta HTTP come blocco di memoria. |
WriteFile(String, Int64, Int64) |
Scrive il file specificato direttamente in un flusso di output di risposta HTTP. |
WriteSubstitution(HttpResponseSubstitutionCallback) |
Consente l'inserimento di blocchi di sostituzione della risposta nella risposta, che consente la generazione dinamica di aree di risposta specificate per risposte memorizzate nella cache di output. |