Buffer |
    Propriétés = Response.Buffer
    Response.Buffer = Boolean
Renvoie ou définit une valeur booléenne qui indique si le résultat doit être conservé sur le serveur et envoyé lorsque la requête a complètement fini le traitement, ou lors de l'invocation de l'une des deux méthodes, Response.Flush ou Response.End. La valeur par défaut est True .
Paramètres booléen Une valeur booléenne censée recevoir ou définir la valeur de la propriété.
Remarques
L'objectif de cette propriété est d'offrir une compatibilité à rebours avec l'ASP classique et a été écartée en faveur de la propriété BufferOutput. Avec ASP.NET, il est préférable d'utiliser BufferOutput plutôt que Buffer. Une différence importante entre la propriété Response.Buffer en ASP classique et les propriétés Buffer et BufferOutput dans ASP.NET, c'est qu'en ASP classique, vous ne pouviez pas modifier la propriété Buffer pour le contenu non encore envoyé au navigateur sans entraîner une erreur. Dans ASP.NET, étant donné qu'il s'agit d'un outil compilé (et non pas interprété), vous pouvez modifier la propriété Buffer ou BufferOutput à tout moment, et la modification n'affecte que le mode de mise en mémoire. Cela offre aux développeurs une flexibilité bien plus grande en termes de mise en mémoire du résultat et du moment pour le faire. Reportez-vous à l'exemple concernant BufferOutput pour une démonstration.

BufferOutput |
    Boolean = Response.BufferOutput
     Response.BufferOutput = Boolean
Renvoie ou définit une valeur booléenne qui indique si oui ou non le résultat est mis en mémoire sur le serveur et envoyé lorsque la requête a terminé l'intégralité du traitement, ou lorsqu'on invoque soit la méthode Response.Flush, soit la méthode Response.End. La valeur par défaut est True .
Paramètres booléen Une valeur booléenne censée recevoir ou définir la valeur de la propriété.
Exemple
Dans cet exemple, on donne à la propriété BufferOutput la valeur False , puis on effectue 50 boucles, en inscrivant une période dans le résultat HTTP à chaque itération de boucle. On inscrit également le même résultat dans la propriété Text du contrôle Message Label. Pour les 10 premières et les 21 dernières itérations, la propriété BufferOutput a la valeur False ; pour les itérations 11 à 29, elle a la valeur True .
    Sub Page_Load(  )
       Response.BufferOutput = False
       Dim i As Integer
       For i = 1 To 50
          If (i > 10 And i < 30) Then
             Response.BufferOutput = True
          Else
             Response.BufferOutput = False
          End If
          System.Threading.Thread.Sleep(500)
          Response.Write(".")
          Message.Text &= "."
          'Response.Flush
       Next
       Response.Write("<br/>Done!<br/>")
       Message.Text &= "<br/>Done!<br/>"
    End Sub
Le contenu lié au code aura à peu près l'aspect suivant: .................................................. Effectué ! .................................................. Effectué ! En principe, on verra apparaître les périodes de la première ligne l'une après l'autre jusqu'à la dixième, suivies d'une pause, puis de 20 autres, suivies l'une après l'autre par le reste et finalement par l'instruction « Effectué ! ». Le même résultat lié au contrôle ASP.NET Label (sous forme de <span> HTML) apparaîtra en une seule fois, étant donné que le contenu lié aux contrôles du serveur n'est pas envoyé au client tant que le contrôle n'est pas effectué. Cela signifie que pour chaque boucle de l'exemple, le code se contente d'ajouter à une propriété du contrôle qui sera effectué plus tard, alors que le texte envoyé à l'aide de Response.Write est envoyé au navigateur immédiatement après l'arrêt de la mise en mémoire. Vous pouvez observer un comportement similaire en distinguant les lignes Response.BufferOutput de l'exemple (à l'aide d'un guillemet ( ' ) simple placé en début de ligne), et en banalisant la ligne Response.Flush. Le fait de distinguer et de banaliser permet d'éliminer la pause d'affichage décrite précédemment. Il est possible d'interrompre le traitement d'une requête ASP.NET pendant un certain nombre de millièmes de secondes à l'aide de la méthode Shared (static) Thread.Sleep. Cela peut être utile lorsque, pour une raison ou pour une autre, il vous faut attendre pendant le traitement. Cependant, le recours à une telle méthode peut avoir un effet sur le temps de traitement total de chacune des requêtes. Pour les applications nécessitant une grande souplesse de fonctionnement, cela peut avoir des effets inacceptables sur le rendement général de l'application, étant donné que seul un nombre limité d'associations de serveurs est disponible pour traiter les requêtes. Pour éviter de fournir de façon explicite l'espace de noms lorsque vous utilisez Thread.Sleep, ajoutez la ligne suivante à la page, juste après la déclaration @ Page :
    <%@ Import Namespace="System.Threading" %>
Remarques
Cette propriété est l'équivalent ASP.NET de la propriété Buffer en ASP classique et lui est préférée pour les nouveaux développements.

Cache |
HttpCachePolicy = Response.Cache |
Renvoie une instance de la classe HttpCachePolicy qui contient la politique cache de la page. Vous pouvez utiliser les méthodes figurant dans la classe HttpCachePolicy avec cette instance de classe pour examiner quels en-têtes ou paramètres (s'ils existent) ont été définis pour altérer le cache de sortie ou pour modifier les paramètres cache considérés. La classe HttpCachePolicy comprend les éléments suivants:
Elément HttpCachePolicy | Description
--- | ---
Méthode SetCacheability | Contrôle la mise en cache par paramétrage de l'en-tête HTTP Cache-Control.
Méthode SetExpires | Définit l'en-tête HTTP Expires. Cette méthode prend un argument DateTime qui représente la date d'expiration définitive de l'en-tête.
Méthode SetLastModified | Définit l'en-tête HTTP Last-Modified. Cette méthode prend un argument DateTime qui représente la date d'expiration définitive de l'en-tête.
Méthode Insert | Insère un élément dans la cache et lui assigne une clé.
Propriété Item | Renvoie un objet représentant un élément cache en fonction de sa valeur clé ou définit un élément de données dans le cache tout en lui assignant une valeur clé.
Méthode Remove | Supprime un élément à valeur clé spécifique du cache.
Paramètres HttpCachePolicy Une variable d'objet de type HttpCachePolicy.
Exemple
Dans cet exemple, on récupère une instance de la classe HttpCachePolicy dans une variable locale, on fixe l'heure d'expiration de la page à celle de fin de traitement augmentée de deux minutes, puis on assigne à la fonction cache de la page la valeur Public . Enfin, la propriété Text du contrôle Message Label est mise à l'heure considérée.
    Sub Page_Load(  )
       Dim myCachePol As HttpCachePolicy
       myCachePol = Response.Cache
       myCachePol.SetExpires(DateTime.Now.AddSeconds(120))
       myCachePol.SetCacheability(HttpCacheability.Public)
       Message.Text = Now.ToString(  )
    End Sub
Normalement, la page affiche la date et l'heure considérées. En cas de mise à jour, le résultat doit en principe rester le même pendant deux minutes.
Remarques
L'objet HttpCachePolicy renvoyé par cette propriété constitue la méthode préférée en ASP.NET pour modifier la politique de cache d'une page donnée. HttpCachePolicy fournit la fonctionnalité correspondant aux propriétés CacheControl, Expires et ExpiresAbsolute de l'ASP classique. Par exemple, la classe HttpCachePolicy vous permet d'empêcher de façon explicite le serveur de mettre en cache la réponse en question, tout en permettant la mise en cache aval de la réponse. Vous pouvez également définir les politiques de mise en cache du contenu d'une page au moyen de la directive @ OutputCache et de ses attributs, même si cette méthode permet un contrôle moins détaillé que celui fourni par les méthodes de la classe HttpCachePolicy . La mise en cache au moyen de la directive @ OutputCache est décrite dans le chapitre 3.

CacheControl |
Response.CacheControl = String |
Sets la capacité de mise en cache de la page considérée.
Paramètres String Une variable de chaîne contenant la valeur de propriété CacheControl à définir. Parmi les valeurs autorisées, figurent les valeurs "Public" et "Private".
Exemple
    Sub Page_Load(  )
       Response.CacheControl = "Public"
       Response.Expires = 2
       Message.Text = Now.ToString(  )
    End Sub
Le code ci-dessus doit en principe afficher le même résultat que l'exemple précédent.
Remarques
Cette propriété a été écartée en faveur des méthodes de classe HttpCacheability .

Charset |
    String = Response.Charset
    Response.Charset = String
Renvoie ou définit une chaîne représentant le jeu de caractères de la réponse considérée. Une fois définie de façon explicite, la valeur assignée à la propriété Charset est ajoutée à l'en-tête de réponse HTTP Content-Type.
Paramètres String Une variable de chaîne censée recevoir ou définir la valeur de la propriété. Par défaut, il s'agit de utf-8.
Exemple
Dans l'exemple ci-dessous, on donne au jeu de caractères de la réponse HTTP la valeur Windows-1255 (veuillez noter que, comme son nom l'indique, ce jeu de caractères n'est disponible que sur Internet Explorer pour les clients Windows et peut entraîner des erreurs d'affichage de page avec les autres navigateurs ou avec ceux qui utilisent d'autres systèmes d'exploitation). Puis, on inscrit la valeur du jeu de caractères dans la propriété Text du contrôle Message Label. Pour voir la différence entre ce jeu de caractères et le jeu de caractères par défaut utf-8, chargez la page dans Internet Explorer et faites ressortir la ligne qui définit la propriété Charset, enregistrez la page et rechargez-la dans le navigateur.
    Sub Page_Load(  )
       Response.Charset = "Windows-1255"
       Message.Text = "Current character set is " & Response.Charset
    End Sub
Remarques
Si vous essayez de modifier cette propriété une fois que les en-têtes HTTP ont été envoyés au navigateur, une HttpException s'affichera. Cela risque fort de se produire si vous désactivez la mise en mémoire du résultat à l'aide de la propriété BufferOutput et que vous écrivez ensuite le contenu dans le navigateur à l'aide de Response.Write. Si le jeu de caractères indiqué par la propriété Charset n'est pas adapté au navigateur utilisé par le client, il sera ignoré et le jeu de caractères par défaut correspondant à ce navigateur lui sera préféré. Comme indiqué précédemment, le fait d'utiliser le jeu de caractères par défaut peut entraîner un affichage de la page différent de ce qui était prévu.

ContentEncoding |
    Encoding = Response.ContentEncoding
    Response.ContentEncoding = Encoding
Renvoie une instance de la classe Encoding représentant le codage de la réponse considérée. La classe Encoding comporte des propriétés et des méthodes qui vous permettent d'examiner et de modifier le codage de caractères du système – c'est à dire, la façon dont les caractères sont stockés en interne dans le système. Par exemple, vous pouvez convertir une chaîne Unicode en une chaîne ASCII, UTF-7 ou UTF-8.
Paramètres Encoding Une variable d'objet de type Encoding. Sa propriété EncodingName fournit le nom explicite (lisible par un humain) du type de codage.
Exemple
Dans cet exemple, on utilise les propriétés de l'instance de classe Encoding renvoyée par la propriété ContentEncoding pour afficher le nom explicite et le nom enregistré (IANA) du codage considéré.
    Sub Page_Load(  )
       Message.Text = "Current encoding is " & _
          Response.ContentEncoding.EncodingName & "<br/>"
       Message.Text &= "Current encoding IANA name is " & _
          Response.ContentEncoding.WebName & "<br/>"
    End Sub
Remarques
La propriété ContentEncoding est nouvelle dans ASP.NET et fournit une interface plus riche pour l'examen et la modification du jeu de caractères et des informations de page de code de la réponse considérée. Elle représente également la seule manière de convertir une chaîne à codage de caractère en une autre à codage différent (par exemple, Unicode à ANSI).

ContentType |
    String = Response.ContentType
    Response.ContentType = String
Renvoie ou définit une chaîne contenant le type MIME de la réponse considérée. Cela vous permet de récupérer ou de définir la valeur de l'en-tête de réponse de HTTP Content-Type.
Paramètres String Une variable de chaîne censée recevoir ou définir le type de contenu. Par défaut, il s'agit de « text/html ».
Exemple
Dans l'exemple suivant, on affiche le type de contenu MIME considéré dans le navigateur du client.
    Sub Page_Load(  )
       Message.Text = "Current content type is " & _
          Response.ContentType & "<br/>"
    End Sub
Remarques
La propriété ContentType est très importante, étant donné qu'elle vous permet d'envoyer du contenu au navigateur du client différent du HTML par défaut. Par exemple, si vous souhaitez utiliser la méthode Response.BinaryWrite pour envoyer des données d'image binaire au navigateur du client, vous devez également donner à la propriété ContentType le type MIME approprié (« image/jpg » ou « image/gif », par exemple). Reportez-vous à l'exemple BinaryWrite pour découvrir la façon de faire correspondante.

Expires |
    Integer = Response.Expires
    Response.Expires = Integer
Renvoie ou définit un nombre entier représentant le nombre de minutes restant avant l'expiration d'une page en mode cache. Cette propriété est utilisée conjointement à la propriété CacheControl pour contrôler la mise en cache des réponses.
Paramètres Integer Une variable entière censée recevoir ou définir le temps restant avant l'expiration, exprimé en minutes.
Remarques
Cette propriété permet d'assurer une compatibilité à rebours avec les applications ASP classiques. Elle a été écartée en faveur des méthodes de l'instance HttpCachePolicy renvoyées par la propriété Cache.

ExpiresAbsolute |
    DateTime = Response.Expires
    Response.Expires = DateTime
Renvoie ou définit une valeur DateTime représentant la date et l'heure à laquelle une réponse en mode cache est censée expirer.
Paramètres DateTime Une variable DateTime censée recevoir ou définir le temps restant avant l'expiration définitive.
Exemple
Dans l'exemple suivant, on place la réponse considérée en mode cache à l'aide de la propriété CacheControl, puis on donne au délai d'expiration définitive la valeur 30 secondes à partir de l'instant considéré.
    Sub Page_Load(  )
       Response.CacheControl = "Public"
       Response.ExpiresAbsolute = DateTime.Now.AddSeconds(30)
       Message.Text = Now.ToString(  )
    End Sub
Remarques
Cette méthode permet d'assurer une compatibilité à rebours avec les applications ASP classiques. Elle a été écartée au profit des méthodes de l'instance HttpCachePolicy renvoyées par la propriété Cache.

IsClientConnected |
Boolean = Response.IsClientConnected |
Renvoie une valeur booléenne qui indique si le client est encore connecté ou pas. Renvoie la valeur False si le client n'est plus connecté.
Paramètres booléen Une variable booléenne censée recevoir la valeur de la propriété.
Exemple
Dans cet exemple, on vérifie la propriété IsClientConnected avant de commencer un traitement prolongé afin d'éviter le coût que représente l'exécution de la tâche si le client n'est plus connecté. Si la propriété renvoie False , le code invoque la méthode Response.End. Même si le client s'est déconnecté et ne peut plus recevoir le contenu mis en mémoire (qui est envoyé lorsqu'on invoque la méthode End), le fait d'invoquer la méthode End reste une bonne idée, étant donné qu'elle interrompra le traitement de la page et déclenchera l'événement Application_EndRequest. Si vous avez écrit du code de nettoyage pour la page exécutée par le gestionnaire d'événement Application_EndRequest, le fait d'invoquer Response.End permettra d'exécuter le code de nettoyage, même si le client est déconnecté.
    Sub Page_Load(  )
       'Check client connection status
       If Response.IsClientConnected = False Then
          Response.End
       Else
          'Start long-running processing task
       End If
    End Sub
Remarques
La propriété IsClientConnected est particulièrement utile pour les processus à long terme qui nécessitent une quantité appréciable de ressources de traitement sur le serveur. Le fait d'interroger la propriété IsClientConnected avant de commencer un traitement lourd, ou celui d'interroger la propriété de façon périodique en cours de traitement, vous permet d'éviter de poursuivre un traitement si le client s'est déconnecté pour une raison ou pour une autre.

Output |
TextWriter = Response.Output |
Renvoie un objet TextWriter en écriture seule qui peut servir à écrire du texte directement dans le flux de sortie de la réponse considérée.
Paramètres TextWriter Une variable d'objet du type TextWriter. La classe TextWriter comprend les éléments suivants:
Elément | Description
--- | ---
Méthode Close | Referme le rédacteur de texte et libère les ressources correspondantes.
Méthode Flush | Supprime le tampon de rédaction de texte et inscrit le résultat dans le dispositif sous-jacent.
Propriété NewLine | Obtient ou définit le ou les nouveaux caractères de ligne utilisés par l'objet TextWriter.
Méthode Write | Inscrit des données dans le flux de texte.
Méthode WriteLine | Inscrit des données suivies d'un caractère de renvoi dans le flux de texte. La propriété NewLine définit le caractère de renvoi.
Exemple
Dans cet exemple, on déclare une variable locale de type TextWriter, on récupère une instance de TextWriter à partir de la propriété Output, puis on utilise la méthode WriteLine pour inscrire le texte « Bonjour tout le monde ! » dans le flux de sortie. La méthode WriteLine inscrit le texte indiqué (ou une représentation des types de données hors chaines sous forme de texte), ainsi qu'une fin de ligne, à l'aide de la propriété NewLine du TextWriter. Si l'on ne définit pas la propriété NewLine, le caractère de fin de ligne affectera le formatage du texte envoyé au navigateur. Cependant, il ne modifiera pas le formatage du résultat fourni par le navigateur, étant donné que les navigateurs ignorent en général les espaces de type fin de ligne non HTML lorsqu'ils interprètent du code HTML.
    Sub Page_Load(  )
       Dim myWriter As System.IO.TextWriter
       myWriter = Response.Output
       myWriter.NewLine = "<br/>"
       myWriter.WriteLine(« Bonjour tout le monde ! »)
       myWriter.WriteLine("Hello, World, once again!")
    End Sub
Remarques
La propriété Output constitue une alternative à la méthode Response.Write pour l'affichage de texte dans le flux de sortie. Vous pouvez également transmettre l'instance TextWriter obtenue de la propriété Output à une méthode de composant personnalisé afin de permettre à ce composant d'inscrire du texte directement dans le flux de sortie de la réponse considérée. Au même titre que la méthode Response.Write, le résultat de l'inscription de texte dans le flux de sortie à l'aide du TextWriter renvoyé par la propriété Output dépend de l'emplacement du code qui sert à inscrire le texte. Par exemple, dans le code ci-dessus, le texte « Bonjour tout le monde ! » apparaîtra avant tout code HTML statique dans la page affichée. Et ce, parce que dans ce cas, le résultat lié au TextWriter et à la méthode Response.Write est traité avant d'appliquer les contrôles à la page. Pour obtenir l'apparition en ligne du résultat de l'instance TextWriter ou Response.Write, vous pouvez placer le code ci-dessus dans un bloc interpréteur <% %> là où vous souhaitez voir apparaître le résultat. Une meilleure approche pour localiser de façon précise un résultat dans ASP.NET consiste à ajouter un contrôle de serveur Literal ASP.NET à l'endroit du fichier où vous souhaitez voir apparaître le résultat et à transmettre le texte de résultat désiré à la propriété Text du contrôle Literal. Pour utiliser la classe TextWriter sans ajouter de façon explicite l'espace de noms System.IO à la déclaration de variable, vous pouvez ajouter la directive @ Import directement en dessous de la directive @ Page avec l'attribut Namespace placé sur System.IO, comme le montre l'exemple suivant:
    <% @ Import Namespace="System.IO" %>

OutputStream |
Stream = Response.OutputStream |
Renvoie un objet Stream en écriture seule qui peut servir à inscrire du contenu binaire directement dans le flux de sortie de la requête considérée.
Paramètres Stream Une variable d'objet de type Stream. La classe Stream comprend les éléments suivants:
Elément | Description
--- | ---
Méthode BeginWrite | Lance une opération d'écriture asynchrone.
Méthode Close | Referme le flux et libère les ressources correspondantes.
Méthode EndWrite | Clôt une opération d'écriture asynchrone.
Méthode Write | Inscrit des données dans le flux.
Méthode WriteByte | Inscrit un octet individuel dans le flux et fait avancer d'un octet dans le flux.
Remarques
La propriété OutputStream constitue une alternative à la méthode Response.BinaryWrite pour afficher du contenu binaire dans le flux de sortie. Vous pouvez également transférer l'instance Stream récupérée à partir de la propriété OutputStream à la méthode d'un composant personnalisé afin de permettre à ce composant d'inscrire du code binaire directement dans le flux de sortie de la réponse considérée.

Status |
    String = Response.Status
    Response.Status = String
Renvoie ou définit une chaîne contenant la ligne d'état HTTP qui sera envoyée au navigateur du client.
Paramètres Chaîne Une variable de chaîne servant à définir ou recevoir le code d'état de la requête considérée. Par défaut, ce code est « 200 OK ».
Remarques
Cette propriété permet d'assurer une compatibilité à rebours avec les applications ASP classiques et a été écartée dans ASP.NET en faveur de la propriété StatusDescription. Contrairement à la propriété Status, les propriétés StatusCode et StatusDescription vous permettent de contrôler la portion de code d'état numérique de la ligne d'état et la description de texte de façon individuelle.

StatusCode |
    Integer = Response.StatusCode
    Response.StatusCode = Integer
Renvoie ou définit une valeur entière qui représente le code d'état HTTP qui sera renvoyé par le navigateur.
Paramètres Integer Une variable entière servant à définir ou à recevoir le code d'état. Par défaut, cette variable à la valeur 200. Les codes existants font partie des séries suivantes: 1xx La série 100 concerne les messages d'information. 2xx La série 200 concerne les messages de fin d'opération. 3xx La série 300 concerne les messages de redirection. Le code d'état spécifique indique si une page a été déplacée de façon temporaire ou permanente. 4xx La série 400 concerne les messages d'erreur client. Le message le plus connu est le message 404 Not Found (introuvable) qui indique que le client a demandé une ressource qui n'existe pas sur le serveur. Cette série comprend également des messages d'erreur d'état liés à l'authentification client. 5xx La série 500 concerne les messages d'erreur de serveur. Par exemple, si IIS reçoit plus de requêtes qu'il ne peut en traiter ou mettre en file d'attente pour un traitement ultérieur, les clients recevront un code d'état de la série 500 avec le message " Serveur occupé ".
Exemple
Cet exemple utilise les propriétés StatusCode et StatusDescription pour envoyer un message d'état HTTP au client. La méthode Response.End interrompt tout traitement ultérieur et envoie au client le résultat se trouvant en mémoire.
    Sub Page_Load(  )
       Response.StatusCode = 542
       Response.StatusDescription = "Server Error - The code is the answer."
       Response.End(  )
    End Sub
Remarques
Au même titre que les autres propriétés qui définissent des en-têtes de réponse HTTP, cette propriété ne peut pas être définie une fois que le code HTTP de corps a été envoyé au client à l'aide des méthodes Response.Write ou assimilées, après interruption de la mise en mémoire.

StatusDescription |
    String = Response.StatusDescription
    Response.StatusDescription = String
Renvoie ou définit une chaîne contenant le message de texte d'état HTTP qui sera envoyé au navigateur avec le code d'état contenu dans la propriété StatusCode.
Paramètres String Une variable de chaîne destinée à définir ou à recevoir les informations supplémentaires en matière de chemin. Par défaut, sa valeur est « OK ».
Exemple
Reportez-vous à l'exemple de la propriété StatusCode.
Remarques
Au même titre que les autres propriété qui définissent des en-têtes de réponse http, cette propriété ne peut plus être définie une fois que le corps HTTP a été envoyé au client (à l'aide des méthodes de type Response.Write ou de méthodes assimilées), après interruption de la mise en mémoire.

SuppressContent |
    Boolean = Response.SuppressContent
    Response.SuppressContent = Boolean
Renvoie ou définit une valeur booléenne indiquant si le résultat HTTP doit être envoyé au client ou pas.
Paramètres booléen Une variable booléenne censée recevoir ou définir la valeur de la propriété. Par défaut, cette valeur est False ; le contenu est envoyé au client.
Exemple
L'exemple suivant inscrit le texte « Bonjour tout le monde ! » dans le résultat (qui est mis en mémoire par défaut) et donne à SuppressContent la valeur True si bien qu'aucun résultat n'est envoyé au client.
    Sub Page_Load(  )
       Response.Write(« Bonjour tout le monde ! »)
       Response.SuppressContent = True
       If Response.SuppressContent Then Response.Close(  )
    End Sub
Remarques
Etant donné que SuppressContent empêche de renvoyer un résultat quelconque au client (y compris les messages d'erreur), la méthode Response.Close (qui referme la connexion réseau avec le client) doit être invoquée pour empêcher le navigateur du client de rester ouvert indéfiniment.

Cookies |
HttpCookieCollection = Response.Cookies |
La collection Cookies renvoie une instance de la classe HttpCookieCollection contenant l'ensemble des cookies envoyés dans le cadre de la requête considérée. La classe HttpCookieCollection contient une instance de la classe HttpCookie pour chaque cookie transmis dans le cadre de la requête client. Les propriétés de ces instances HttpCookie peuvent être utilisées pour accéder aux informations en matière de cookie(s). La collection Cookies de la classe Response prend en charge le jeu de propriétés suivant: AllKeys Renvoie un tableau de chaînes de l'ensemble des clés de la collection. Count Renvoie un nombre entier représentant la quantité de paires nom/valeur figurant dans la collection. Item(Index|Key) Renvoie une instance de la classe de collection en fonction de l'index ou de la clé introduite. Il s'agit de la propriété par défaut, raison pour laquelle, par exemple, le fait d'invoquer: Keys Renvoie une collection des clé de la collection. En outre, la classe HttpCookieCollection comporte les méthodes suivantes: CopyTo(Array,Index) Copie le contenu de l'objet de collection dans l'argument Array fourni, en commençant par l'argument Index fourni. On remarquera que le tableau (array) doit être dimensionné de façon à pouvoir contenir la collection avant d'invoquer CopyTo. GetKey(Index) Renvoie une chaîne contenant la clé correspondant à l'argument Index fourni. Comme en ASP classique, la collection de cookies est toujours mise en oeuvre sous forme de collection(en fait, la classe HttpCookieCollection est l'héritière de la classe NameObjectCollectionBase de .NET). Toutefois, plutôt qu'une collection de clés de valeurs et de chaînes, l'implémentation ASP.NET est une collection de clés et d'objets de chaînes (instances de la classe HttpCookie ). Les cookies individuels sont récupérés sous forme de variables du type HttpCookie, ce qui permet d'avoir accès aux valeurs de cookies au travers des propriétés de classe. Les cookies de type dictionnaire (ceux qui ont plus d'une valeur) sont accessibles au moyen de la propriété Values de la classe HttpCookie , qui renvoie une NameValueCollection contenant les sous-clés et les valeurs de cookies. Vous pouvez aussi récupérer des valeurs individuelles au moyen des clés correspondantes à l'aide de la syntaxe suivante:
Paramètres HttpCookieCollection Une variable d'objet du type HttpCookieCollection.
Exemple
Cet exemple crée un cookie de login, définit une heure d'expiration du cookie 30 minutes après l'heure considérée et ajoute le cookie à la collection Cookies.
    Sub Page_Load(  )
       Dim myCookie As New HttpCookie("LoggedIn")
       myCookie.Value = "True"
       myCookie.Expires = DateTime.Now.AddMinutes(30)
       Response.Cookies.Add(myCookie)
    End Sub
Remarques
Contrairement à l'ASP classique, les collections d'ASP.NET démarrent à zéro, si bien que, quelle que soit la collection ou le tableau considéré, sa première valeur est 0 et non pas 1. Il est particulièrement important de s'en rappeler lorsque l'on souhaite récupérer des valeurs à l'aide de l'index correspondant.

AddCacheItemDependencies |
Response.AddCacheItemDependencies(ByVal cacheKeys As ArrayList) |
Ajoute une liste de clés cache contenues dans une ArrayList à la liste des clés d'éléments Cache dont dépend le cache de sortie de la réponse considérée. Si l'un des éléments cache identifiés par les clés est modifié, le cache de sortie de la réponse considérée sera invalidé et une nouvelle réponse sera générée.
Paramètres cacheKeys Une ArrayList contenant un ou plusieurs noms de clé d'élément Cache.
Exemple
Cet exemple montre comment utiliser la méthode AddCacheItemDependencies pour définir un nombre de clés cache en fonction du cache de sortie de la réponse considérée. Si l'un des éléments cache représentés par ces clés est modifié, le cache de sortie est invalidé et la page est mise à jour à l'aide de Response.Redirect.
    <%@ Page Language="vb" %>
    <%@ OutputCache Duration="300" VaryByParam="None" %>
    <html>
       <head>
          <title>Adding cache dependencies in ASP.NET</title>
          <script runat="server">
             Sub Page_Load(  )
                Dim myArrayList As New ArrayList
                myArrayList.Add("Key1")
                myArrayList.Add("Key2")
                Response.AddCacheItemDependencies(myArrayList)
                Message.Text = DateTime.Now.ToString(  )
             End Sub
             Sub Button1_Click(sender As Object, e As EventArgs)
                Cache("Key1") = "foo" & DateTime.Now.ToString(  )
                Response.Redirect("AddCacheItemDependencies.aspx")
             End Sub
             Sub Button2_Click(sender As Object, e As EventArgs)
                Cache("Key2") = "bar" & DateTime.Now.ToString(  )
                Response.Redirect("AddCacheItemDependencies.aspx")
             End Sub
          </script>
       </head>
    <body>
       <form runat="server">
          <asp:label id="Message" runat="server"/>
          <asp:button id="Button1" text="Change Key 1"
             onClick="Button1_Click" runat="server"/>
          <asp:button id="Button2" text="Change Key 2"
             onClick="Button2_Click" runat="server"/>
       </form>
    </body>
    </html>
Remarques
La méthode AddCacheItemDependencies est utile lorsque vous souhaitez mettre en cache le résultat d'une page, mais la page elle-même dépend de la valeur de plusieurs éléments stockés dans le cache ASP.NET. Plutôt que de mettre en cache la page pour une durée très courte afin d'éviter la péremption des données, vous pouvez utiliser AddCacheItemDependencies pour annuler automatiquement la mise en cache de résultat lorsque les conditions changent.

AddCacheItemDependency |
Response.AddCacheItemDependency(ByVal cacheKey As String) |
Ajoute une clé de cache à la liste des clés de cache dont dépend le cache de sortie de la réponse considérée. Si l'un des éléments cache identifiés par la clé est modifié, le cache de sortie de la réponse considérée sera annulé et une nouvelle réponse sera générée.
Paramètres cacheKey Une chaîne contenant la clé de cache à ajouter.
Exemple
Cet exemple montre comment utiliser la méthode AddCacheItemDependencies pour définir une clé de cache en fonction du cache de sortie de la réponse considérée. Si l'élément cache représenté par cette clé est modifié, le cache de sortie est annulé et la page est mise à jour à l'aide de Response.Redirect.
    <%@ Page Language="vb" %>
    <%@ OutputCache Duration="300" VaryByParam="None" %>
    <html>
       <head>
          <title>Adding a cache dependency in ASP.NET</title>
          <script runat="server">
             Sub Page_Load(  )
                Response.AddCacheItemDependency("Key1")
                Message.Text = DateTime.Now.ToString(  )
             End Sub
             Sub Button1_Click(sender As Object, e As EventArgs)
                Cache("Key1") = "foo" & DateTime.Now.ToString(  )
                Response.Redirect("AddCacheItemDependency.aspx")
             End Sub
          </script>
       </head>
    <body>
       <form runat="server">
          <asp:label id="Message" runat="server"/>
          <asp:button id="Button1" text="Change Key 1" onClick="Button1_
    Click"          runat="server"/>
       </form>
    </body>
    </html>
Remarques
La méthode AddCacheItemDependency fournit la même fonctionnalité que la méthode AddCacheItemDependencies, mais pour un élément cache individuel plutôt que pour un groupe d'entre eux.

AddFileDependencies |
Response.AddFileDependencies(ByVal filenames As ArrayList) |
Ajoute une liste de fichiers contenus dans une ArrayList à la liste des fichiers dont dépend le cache de sortie de la réponse considérée. Si l'un de ces fichiers est modifié, le cache de sortie est invalidé.
Paramètres filenames Une ArrayList contenant un ou plusieurs noms de chemin ou de fichier.
Exemple
Cet exemple montre comment utiliser la méthode AddFileDependencies pour définir un nombre de fichiers en fonction du cache de sortie de la réponse considérée. Si l'un de ces fichiers est modifié, le cache de sortie est invalidé.
    <%@ Page Language="vb" %>
    <%@ OutputCache Duration="300" VaryByParam="None" %>
    <html>
       <head>
          <title>Adding file dependencies in ASP.NET</title>
          <script runat="server">
             Sub Page_Load(  )
                Dim myArrayList As New ArrayList
                myArrayList.Add(Server.MapPath("dep.txt"))
                myArrayList.Add(Server.MapPath("dep1.txt"))
                Response.AddFileDependencies(myArrayList)
                Message.Text = DateTime.Now.ToString(  )
             End Sub
          </script>
       </head>
    <body>
       <asp:label id="Message" runat="server"/>
    </body>
    </html>
Remarques
La méthode AddFileDependencies est utile lorsque vous souhaitez mettre en cache le résultat d'une page, mais la page elle-même dépend de la valeur de plusieurs fichiers sur le serveur Web (auquel on peut accéder à l'aide d'un chemin de fichier depuis le serveur Web). Plutôt que de mettre en cache la page pour une durée très courte afin d'éviter la péremption des données, vous pouvez utiliser AddFileDependencies pour invalider automatiquement la mise en cache de résultat lorsque les conditions changent.

AddFileDependency |
Response.AddFileDependency(ByVal filenames As String) |
Ajoute un fichier à la liste de fichiers dont dépend le cache de sortie de la requête considérée. Si le nommé par l'argument filename est modifié, le cache de sortie est invalidé.
Paramètres filename Une chaîne contenant le chemin et le filename (nom de fichier) à ajouter.
Exemple
L'exemple ci-dessous montre comment utiliser la méthode AddFileDependency pour définir un fichier en fonction du cache de sortie de la réponse considérée. Si le fichier est modifié, le cache de sortie est invalidé.
    <%@ Page Language="vb" %>
    <%@ OutputCache Duration="300" VaryByParam="None" %>
    <html>
       <head>
          <title>Adding a file dependency in ASP.NET</title>
          <script runat="server">
             Sub Page_Load(  )
                Response.AddFileDependency(Server.MapPath("dep.txt"))
                Message.Text = DateTime.Now.ToString(  )
             End Sub
          </script>
       </head>
    <body>
       <asp:label id="Message" runat="server"/>
    </body>
    </html>
Le nom de fichier dep.txt figurant dans le code ci-dessus doit résider dans le même répertoire que la page. Vous êtes libre de choisir les contenus de la page. Si le contenu du fichier est modifié, le cache sera invalidé.
Remarques
La méthode AddFileDependency fournit la même fonctionnalité que la méthode AddFileDependencies, mais pour un fichier individuel plutôt que pour un groupe d'entre eux.

AddHeader |
Response.AddHeader(ByVal name As String, ByVal value As String) |
Ajoute un en-tête HTTP comportant le nom et la valeur de flux de sortie indiqués.
Paramètres name Un argument de chaîne contenant le nom de l'en-tête. value Un argument de chaîne contenant la valeur de l'en-tête.
Remarques
La propriété AddHeader fournit une compatibilité à rebours avec les applications ASP classiques. Cette propriété a été écartée en faveur de la nouvelle méthode AppendHeader.

AppendHeader |
Response.AppendHeader(ByVal name As String, _ ByVal value As String) |
Ajoute un en-tête HTTP avec le nom et la valeur de flux de sortie indiqués. Cette méthode peut servir à ajouter des en-têtes HTTP personnalisés ou à modifier la valeur des en-têtes HTTP standard.
Paramètres name Un argument de chaîne contenant le nom de l'en-tête. value Un argument de chaîne contenant la valeur de l'en-tête.
Exemple
Dans cet exemple, on donne à l'en-tête HTTP Content-Type la valeur « text/xml » puis on affiche la nouvelle valeur en donnant à la propriété Text du contrôle Message Label la valeur de la propriété ContentType. En conséquence, le résultat de la page est traité en tant que code XML.
    Sub Page_Load(  )
       Response.AppendHeader("Content-Type", "text/xml")
       Message.Text = Response.ContentType
    End Sub
Remarques
Lorsque vous utilisez cette méthode avec des en-têtes HTTP liés à la politique de mise en cache, si des paramètres plus restrictifs sont appliqués par utilisation des API de cache ASP.NET, ceux-ci seront prioritaires par rapport à ceux appliqués à l'aide de AppendHeader.

AppendToLog |
Response.AppendToLog(ByVal param As String) |
Ajoute le texte indiqué par l'argument param au fichier journal IIS pour l'application IIS considérée.
Paramètres param Un argument de chaîne contenant le texte à ajouter au journal IIS.
Exemple
Dans l'exemple suivant, on inscrit un message dans le journal IIS de l'application à laquelle appartient la page, puis on inscrit un message dans le contrôle Message Label ASP.NET indiquant que le message a été rédigé:
    Sub Page_Load(  )
       Response.AppendToLog("Hello from Page_Load!")
       Message.Text = "Message written to IIS Log!"
    End Sub
L'entrée de journal IIS générée par l'exemple ci-dessus a l'aspect suivant:
    2001-10-14 00:13:14 127.0.0.1 - 127.0.0.1 80 GET
    /ASPdotNET_iaN/Chapter_17/AppendToLog.aspx
    Hello+from+Page_Load! 200
    BrowserString
Remarques
Contrairement à la méthode AppendToLog en ASP classique, qui était limitée à 80 caractères par appel, avec ASP.NET vous pouvez inscrire autant de texte que vous le souhaitez dans le journal à l'aide de AppendToLog. Les fichiers journaux IIS sont situés par défaut dans %windir% \System32\LogFiles\W3SVC x \ex date .log, où %windir% est le nom du répertoire Windows, x est le nombre de sites Web du journal (correspondant au nom de Metabase IIS de l'application en question) et date est la date de création du fichier journal.

ApplyAppPathModifier |
String = Response.ApplyAppPathModifier(ByVal virtualPath_ As String) |
Etant donné un chemin de ressource virtuel, renvoie une chaîne contenant un nouveau chemin virtuel où figure le SessionID. Ce nouveau chemin virtuel peut servir à créer des URL absolus utilisables dans les applications qui font appel à des sessions sans cookies.
Paramètres String Un argument de chaîne censé recevoir le chemin virtuel modifié. virtualPath Un argument de chaîne contenant le chemin virtuel à modifier.
Exemple
Dans l'exemple suivant, on récupère un chemin virtuel contenant le SessionID et on affiche le chemin à l'aide de la propriété Text du contrôle Message Label:
    Sub Page_Load(  )
       Dim NewPath As String
       NewPath = Response.ApplyAppPathModifier(Request.Path)
       Message.Text = "Modified virtual path = " & NewPath
    End Sub
Le fichier web.config servant à définir le gestionnaire d'état de session pour utiliser des sessions sans cookies figure ci-dessous:
    <configuration>
       <system.web>
          <sessionState mode="InProc" cookieless="true"/>
       </system.web>
    </configuration>
Remarques
Cette méthode est très utile en cas d'usage de la fonctionnalité d'état de session sans cookies qui est nouvelle dans ASP.NET. Si l'attribut sans cookies de la section config sessionState dans web.config n'a pas la valeur True , cette méthode renverra simplement le chemin virtuel transmis sans modification.

BinaryWrite |
Response.BinaryWrite(ByVal buffer( ) As Byte) |
Permet d'inscrire du contenu binaire dans le flux de sortie. Aucune modification du résultat n'est effectuée avant l'envoi du contenu binaire au client.
Paramètres buffer( ) Un tableau d'octets contenant les données binaires à inscrire dans le flux de sortie.
Exemple
Voici un exemple de BinaryWrite:
    Sub Page_Load(  )
       Dim ImageStream As New FileStream(MapPath("aspnetian.jpg"), _
          FileMode.Open, FileAccess.Read)
       Dim ImageBytes(ImageStream.Length) As Byte
       ImageStream.Read(ImageBytes, 0, ImageStream.Length)
       ImageStream.Close(  )
       Response.ContentType = "image/bmp"
       Response.BinaryWrite(ImageBytes)
       Response.End(  )
    End Sub
Remarques
Cette méthode est particulièrement utile pour inscrire du contenu binaire récupéré à partir d'une base de données dans le navigateur. Lorsqu'on introduit des données autres que du texte (graphiques, etc.) dans le navigateur, on veillera à affecter le type MIME approprié à la propriété Response.ContentType du type d'image que l'on envoie(« image/jpg » par exemple).

Clear |
Response.Clear( ) |
Efface le contenu du flux de sortie considéré.
Paramètres
Aucun
Remarques
La méthode Clear efface l'ensemble du code en mémoire à un moment donné, mais n'efface pas les en-têtes de réponse HTTP. Si la mise en mémoire du résultat est inactivée en donnant à la propriété BufferOutput la valeur False , cette méthode n'aura aucun effet, étant donné qu'elle n'efface que le contenu mis en mémoire. Ce n'est pas le cas en ASP classique, où le fait d'invoquer Clear lorsque la mise en mémoire est désactivée entraîne une erreur.

ClearContent |
Response.ClearContent( ) |
Efface le contenu du flux de sortie considéré.
Paramètres
Aucun
Exemple
Dans cet exemple, on inscrit un message de texte à l'aide de Response.Write puis on efface le résultat mis en mémoire à l'aide de Response.Clear. Si la mise en mémoire est activée, le message de texte ne sera jamais envoyé au navigateur.
    Sub Page_Load(  )
       Response.Write("This content will not be seen.")
       Response.Clear(  )
       Message.Text = _
          "Content written with <i>Response.Write</i> was cleared."
    End Sub
Remarques
La méthode ClearContent efface l'ensemble du code en mémoire à un moment donné, mais n'efface pas les en-têtes de réponse HTTP. Les en-têtes HTTP peuvent être effacés à l'aide de la méthode ClearHeaders. Si la mise en mémoire du résultat a été désactivée en donnant à la propriété BufferOutput la valeur False , la méthode ClearContent n'aura aucun effet, étant donné qu'elle n'efface que le contenu mis en mémoire.

ClearHeaders |
Response.ClearHeaders( ) |
Efface les en-têtes HTTP du flux de sortie considéré.
Paramètres
Aucun
Exemple
Dans cet exemple, on donne à l'en-tête HTTP Content-Type la valeur « text/xml », on efface les en-têtes HTTP à l'aide de la méthode ClearHeaders, puis on inscrit la valeur de la propriété Response.ContentType dans la propriété Text du contrôle Message ASP.NET Label. Le Content-Type affiché par défaut est « text/html ».
    Sub Page_Load(  )
       Response.AppendHeader("Content-Type", "text/xml")
       Response.ClearHeaders(  )
       Message.Text = Response.ContentType
    End Sub
Remarques
La méthode ClearContent n'efface que les en-têtes de réponse HTTP, mais pas le contenu mis en mémoire.

Close |
Response.Close( ) |
Referme la prise de réseau de la réponse considérée.
Paramètres
Aucun
Exemple
Reportez-vous à l'exemple concernant la propriété SuppressContent.
Remarques
La méthode Close peut servir à refermer de façon immédiate la prise de réseau de la réponse considérée. Ce mode de fermeture entraînera généralement l'affichage d'un message d'erreur (du type « serveur introuvable ») dans le navigateur du client.

End |
Response.End( ) |
Stops traite la requête considérée et envoie immédiatement au client l'ensemble du contenu mis en mémoire.
Paramètres
Aucun
Exemple
Dans l'exemple ci-dessous, on inscrit le texte « Bonjour tout le monde ! » dans le navigateur, on invoque Response.End, puis on essaie de donner à la propriété Text du contrôle Message ASP.NET Label la valeur « Bonjour tout le monde ! » Cependant, ce code ne sera pas exécuté, étant donné que la méthode End interrompt immédiatement le traitement de la page.
    Sub Page_Load(  )
       Response.Write(« Bonjour tout le monde ! »)
       Response.End(  )
       Message.Text = « Bonjour tout le monde ! »
    End Sub
En réalité, le code ci-dessus n'entraînera que l'affichage du message « Bonjour tout le monde ! » dans le navigateur, étant donné que ni le code HTML statique, ni les contrôles n'apparaîtront sur la page.
Remarques
Lorsqu'on invoque la méthode End, en plus de l'envoi au client du résultat mis en mémoire et de l'interruption du traitement, on déclenche l'événement Application_EndRequest.

Flush |
Response.Flush( ) |
Envoie immédiatement au client l'ensemble du résultat mis en mémoire.
Paramètres
Aucun
Exemple
Reportez-vous à l'exemple correspondant à la propriété BufferOutput. Si vous faites ressortir les lignes qui donnent à BufferOutput la valeur False et que vous banalisez la ligne qui invoque Response.Flush, vous vous rendrez compte que la méthode Flush vous permet d'envoyer de façon explicite au navigateur du contenu mis en mémoire.
Remarques
Le fait que la mise en mémoire s'effectue par défaut dans ASP.NET rend la méthode Flush particulièrement utile. Plutôt que de désactiver la mise en mémoire, ce qui a pour effet d'envoyer immédiatement au navigateur tout le contenu envoyé à l'aide de Response.Write, vous pouvez utiliser Response.Flush pour envoyer du contenu par morceaux ou pour vous assurer de la fin définitive d'une opération avant d'envoyer le contenu mis en mémoire à un moment donné. Vous pouvez aussi combiner les utilisations de Response.Flush et de Response.Clear pour effectuer la vérification préalable du contenu avant de l'envoyer au navigateur. Si un jeu de calculs ou de résultats donné rencontre une erreur, vous pouvez invoquer Response.Clear pour effacer le résultat gênant et le remplacer ensuite par un message d'erreur ou par un contenu différent. Si le résultat vous convient, vous pouvez invoquer Response.Flush pour envoyer le résultat mis en mémoire au navigateur et continuer ensuite le traitement.

Pics |
Response.Pics(ByVal value As String) |
Ajoute un en-tête PICS-Label au flux de sortie de la réponse considérée. La Platform for Internet Content Selection (PICS) sert à évaluer les contenus Internet en fonction de leur niveau de violence, de sexe, de langage et de nudité.
Paramètres value Un argument de chaîne contenant le texte de l'en-tête PICS-Label.
Exemple
Dans l'exemple suivant, on définit un en-tête PICS pour lequel RSAC est l'organisme d'évaluation, on fixe la période d'évaluation du 1/8/2001 au 28/2/2002 et on définit les catégories de la façon suivante: Violence - 1 Sexe - 2 Langage pour adultes - 3 Nudité - 4
    Sub Page_Load(  )
       Dim PICSLabel As String
       PICSLabel &= "(PICS-1.1 <http://www.rsac.org/ratingsv01.html> "
       PICSLabel &= "labels on " & Chr(34)
       PICSLabel &= "2001.08.01T06:00-0000" & Chr(34)
       PICSLabel &= " until " & Chr(34)
       PICSLabel &= "2002.02.28T23:59-0000" & Chr(34)
       PICSLabel &= " ratings (V 1 S 2 L 3 N 4))"
       Response.PICS(PICSLabel)
       Message.Text = PICSLabel
    End Sub
Remarques
L'en-tête PICS-Label sert à évaluer le contenu d'un site. Les utilisateurs peuvent configurer leurs navigateurs pour interdire l'affichage de sites qui envoient des en-têtes PICS-Label et dont les évaluations indiquent que le site contient un haut niveau de contenu dans l'une des catégories que le navigateur est censé évaluer. Des informations supplémentaires sur les normes PICS en matière d'évaluation de contenus sont disponibles sur le site web du World Wide Web Consortium: http://www.w3c.org.

Redirect |
    Response.Redirect(ByVal url As String)
    Response.Redirect(ByVal url As String,ByVal endResponse As Boolean)
Redirige la page en cours d'exécution vers une autre page indiquée par l'argument URL et achève le cas échéant le traitement de la page considérée.
Paramètres url Un argument de chaîne contenant l'URL de la page vers laquelle la redirection doit avoir lieu. endResponse Un argument booléen indiquant s'il faut interrompre le traitement de la page considérée ou pas. Si l'argument est omis, le fait d'invoquer la méthode entraîne l'interruption du traitement de la page considérée.
Exemple
Dans cet exemple, on redirige la requête considérée vers BufferOutput.aspx et on demande à ASP.NET d'interrompre le traitement de la page considérée:
    Sub Page_Load(  )
       Response.Redirect("BufferOutput.aspx", True)
    End Sub
Remarques
Sauf si la page depuis laquelle vous invoquez Response.Redirect nécessite un traitement supplémentaire, donnez toujours la valeur True au deuxième argument de Response.Redirect afin d'éviter de gaspiller des ressources de serveur en continuant à traiter la page considérée. Cette fonction est nouvelle dans ASP.NET. Lorsque l'on invoque Response.Redirect uniquement à l'aide de l'argument url , le traitement de la page en question est interrompu de façon automatique. Veuillez noter que lorsque vous redirigez vers une page telle que BufferOutput.aspx dans laquelle la mise en mémoire est désactivée, ou vers une page qui utilise Response.Flush, la redirection ne s'arrêtera que lorsque la page cible a achevé le traitement. Cela signifie que tout le contenu de la page cible apparaîtra en même temps, plutôt que petit à petit à partir de la mémoire tampon.

Write |
    Response.Write(ByVal ch As Char)
    Response.Write(ByVal obj As Object)
    Response.Write(ByVal s As String)
    Response.Write(ByVal buffer( ) As Char, ByVal index As Integer,ByVal count As Integer)
Permet d'inscrire du contenu arbitraire dans le flux de sortie. Il peut s'agir de caractères, d'un objet (à l'aide de la méthode ToString( ) d'objet) ou de données String.
Paramètres ch Un argument Char contenant un caractère à inscrire dans le flux de sortie. obj Un argument Object contenant un objet dont la représentation de chaîne sera inscrite dans le flux de sortie. s Un argument String contenant du texte à inscrire dans le flux de sortie. buffer( ) Un argument de tableau Char contenant les caractères à inscrire dans le flux de sortie. index Un argument Integer contenant le point de départ des inscriptions dans le tableau Char. count Un argument Integer contenant le nombre de caractères à inscrire.
Exemple
Cet exemple crée un tableau de Chars, définit les valeurs des Chars, puis parcourt le tableau et affiche son contenu à l'aide de Response.Write:
    Sub Page_Load(  )
       Dim MyChars(2) As Char
       Dim MyChar As Char
       MyChars(0) = CChar("A")
       MyChars(1) = CChar("B")
       MyChars(2) = CChar("C")
       For Each MyChar in MyChars
          Response.Write(MyChar)
       Next
    End Sub
Remarques
Comme indiqué ci-dessus, la méthode Write d'ASP.NET permet d'acquérir un certain nombre de nouvelles implémentations surchargées. Le code ci-dessus peut aussi être écrit à l'aide d'une autre implémentation surchargée qui accepte un tableau de Chars, un index de départ, et le compte de Chars à inscrire, comme le montre l'exemple suivant:
    Response.Write(MyChars, 0, 3)
L'implémentation de la méthode Write qui prend Object comme argument profite de la méthode intégrée ToString de la classe d'objet pour afficher la représentation de chaîne de l'objet. ToString est hérité par l'ensemble des classes .NET et, par défaut, renvoie l'espace de noms et le nom de classe de la classe d'objet. Les classes qui souhaitent envoyer d'autres informations les concernant peuvent, pour ce faire, écraser l'implémentation héritée de ToString.

WriteFile |
    Response.WriteFile(ByVal fileName As String)
    Response.WriteFile(ByVal fileName As String,ByVal includeHeaders As Boolean)
    Response.WriteFile(ByVal fileHandle As IntPtr,ByVal offset As Long, ByVal size As Long)
    Response.WriteFile(ByVal fileName As String,ByVal offset As Long, ByVal size As Long)
Writeest un fichier indiqué dans l'un des arguments surchargés dans le flux de sortie.
Paramètres filename Un argument de chaîne contenant le chemin et le filename du fichier dont le contenu doit être inscrit dans le flux de sortie. includeHeaders Un argument booléen qui indique si les contenus du fichier doivent être inscrits dans un bloc mémoire ou pas. fileHandle Un argument de type IntPtr concernant un gestionnaire de fichier. Vous pouvez obtenir le gestionnaire en créant un nouvel objet FileStream à partir du fichier, puis en interrogeant la propriété FileStream's Handle. offset Un argument de type Long contenant la position d'octets dans le fichier à partir de laquelle l'écriture est censée commencer. size Un argument de type Long contenant le nombre d'octets à inscrire dans le flux de sortie.
Exemple
Dans cet exemple, on inscrit les contenus du fichier dep.txt dans le flux de sortie de la réponse considérée.
    Sub Page_Load(  )
       Response.WriteFile("dep.txt")
    End Sub
Remarques
La méthode WriteFile peut être utilisée de plusieurs (comme des données graphiques) échoueront.