Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

WebRequestInformation classe

 

Date de publication : novembre 2016

Fournit des informations sur la demande Web actuelle.

Espace de noms:   System.Web.Management
Assembly:  System.Web (dans System.Web.dll)

System.Object
  System.Web.Management.WebRequestInformation

public sealed class WebRequestInformation

NomDescription
System_CAPS_pubpropertyPrincipal

Obtient l’instance de l’entité de code managé associée à la demande Web.

System_CAPS_pubpropertyRequestPath

Obtient le chemin d’accès physique de la demande Web.

System_CAPS_pubpropertyRequestUrl

Obtient le chemin d’accès logique de la demande.

System_CAPS_pubpropertyThreadAccountName

Obtient une chaîne qui représente le nom d’ouverture de session Windows de l’utilisateur au nom duquel le code est exécuté.

System_CAPS_pubpropertyUserHostAddress

Obtient l’adresse de l’hôte.

NomDescription
System_CAPS_pubmethodEquals(Object)

Détermine si l'objet spécifié est identique à l'objet actuel.(Hérité de Object.)

System_CAPS_pubmethodFormatToString(WebEventFormatter)

Met en forme les informations de la demande Web.

System_CAPS_pubmethodGetHashCode()

Fait office de fonction de hachage par défaut.(Hérité de Object.)

System_CAPS_pubmethodGetType()

Obtient le Type de l'instance actuelle.(Hérité de Object.)

System_CAPS_pubmethodToString()

Retourne une chaîne qui représente l'objet actuel.(Hérité de Object.)

Contrôle d’état ASP.NET permet de personnel de production et des opérations gérer les applications Web déployées. Le System.Web.Management espace de noms contient les types d’événements d’état responsables de l’empaquetage des données d’état application et les types de fournisseurs responsables du traitement de ces données. Il contient également des types pris en charge qui facilitent la gestion des événements d’état.

Les instances de la WebRequestInformation classe contiennent des informations obtenues à l’aide de la WebRequestEvent, WebAuditEvent, WebErrorEvent, ou WebRequestErrorEvent types.

Votre application a besoin des autorisations appropriées pour accéder aux informations protégées fournies par ce type.

System_CAPS_noteRemarque

Dans la plupart des cas, vous serez en mesure d’utiliser les types de contrôle d’état ASP.NET comme elle est implémentée, et vous surveillerez le système de contrôle d’intégrité en spécifiant des valeurs dans la healthMonitoring section de configuration. Vous pouvez également dériver les types de contrôle d’intégrité pour créer vos propres fournisseurs et événements personnalisés. Pour obtenir un exemple de création d’une classe d’événements personnalisés, consultez l’exemple fourni dans cette rubrique.

L’exemple de code suivant montre comment implémenter un événement personnalisé qui utilise le WebRequestInformation type.

Un extrait du fichier de configuration qui permet à ASP.NET d’utiliser cet événement personnalisé est également affiché.

Assurez-vous que votre événement personnalisé est déclenché au bon moment, autrement dit, lorsque l’événement d’état système équivalent qu’il remplace doit l’être.

<healthMonitoring
  heartBeatInterval="0" enabled="true">

  <profiles>
    <add name="Custom" 
      minInstances="1" 
      maxLimit="Infinite" 
      minInterval="00:00:00" />
  </profiles>

  <eventMappings>

    <add 
      name="SampleWebRequestInformation" 
      type="SamplesAspNet.SampleWebRequestInformation,webrequestinformation,Version=1.0.1782.28745, Culture=neutral, PublicKeyToken=79955d9b8521c250,processorArchitecture=MSIL" />

  </eventMappings>

  <rules>

    <add name="Custom Web Request Info Event" 
      eventName="SampleWebRequestInformation" 
      provider="EventLogProvider"
      profile="Custom" />

  </rules>

</healthMonitoring>

using System;
using System.Text;
using System.Web;
using System.Web.Management;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace SamplesAspNet
{
    // Implements a custom WebRequestEvent that uses
    // WebRequestInformation. 
    public class SampleWebRequestInformation :
        WebRequestEvent
    {
        private StringBuilder eventInfo;

        // Instantiate events identified 
        // only by their event code.
        public SampleWebRequestInformation(string msg,
            object eventSource, int eventCode):
        base(msg, eventSource, eventCode)
        {
            // Perform custom initialization.
            eventInfo = new StringBuilder();
            eventInfo.Append(string.Format(
                "Event created at: {0}",
                EventTime.ToString()));
        }


        // Instantiate events identified by 
        // their event code.and related 
        // event detailed code.
        public SampleWebRequestInformation(string msg,
            object eventSource, int eventCode,
            int eventDetailCode)
            :
            base(msg, eventSource,
            eventCode, eventDetailCode)
        {
            // Perform custom initialization.
            eventInfo = new StringBuilder();
            eventInfo.Append(string.Format(
                "Event created at: {0}",
                EventTime.ToString()));
        }


        // Raises the event.
        public override void Raise()
        {
            // Perform custom processing. 
            eventInfo.Append(string.Format(
                "Event raised at: {0}",
               EventTime.ToString()));
            // Raise the event.
            base.Raise();
        }

        // Get the request path.
        public string GetRequestPath()
        {
            // Get the request path.
            return (string.Format(
                "Request path: {0}",
                RequestInformation.RequestPath));
        }

        // Get the request URL.
        public string GetRequestUrl()
        {
            // Get the request URL.
            return (string.Format(
                "Request URL: {0}",
                RequestInformation.RequestUrl));
        }

        // Get the request user host address.
        public string GetRequestUserHostAdddress()
        {
            // Get the request user host address.
            return (string.Format(
                "Request user host address: {0}",
                RequestInformation.UserHostAddress));
        }

        // Get the request principal.
        public string GetRequestPrincipal()
        {
            // Get the request principal.
            return (string.Format(
                "Request principal name: {0}",
                RequestInformation.Principal.Identity.Name));
        }


        // Formats Web request event information.
        public override void FormatCustomEventDetails(
         WebEventFormatter formatter)
        {

            // Add custom data.

            formatter.AppendLine("");
            formatter.AppendLine(
                "Custom Request Information:");

            formatter.IndentationLevel += 1;

            // Display the request information obtained 
            // using the WebRequestInformation object.
            formatter.AppendLine(GetRequestPath());
            formatter.AppendLine(GetRequestUrl());
            formatter.AppendLine(GetRequestUserHostAdddress());
            formatter.AppendLine(GetRequestPrincipal());

            formatter.IndentationLevel -= 1;

            formatter.AppendLine(eventInfo.ToString());

        }


    }
}

.NET Framework
Disponible depuis 2.0

Tous les membres statiques publics ( Shared en Visual Basic) de ce type sont thread-safe. Les membres d’instance n’ont pas la garantie d’être thread-safe.

Retour au début
Afficher: