Exporter (0) Imprimer
Développer tout
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

ServiceHostBase, classe

Étend la classe ServiceHostBase pour implémenter des hôtes exposant des modèles de programmation personnalisés.

Espace de noms :  System.ServiceModel
Assembly :  System.ServiceModel (dans System.ServiceModel.dll)

public abstract class ServiceHostBase : CommunicationObject, 
	IExtensibleObject<ServiceHostBase>, IDisposable

Le type ServiceHostBase expose les membres suivants.

  NomDescription
Méthode protégéeServiceHostBaseInitialise une nouvelle instance de la classe ServiceHostBase.
Début

  NomDescription
Propriété publiqueAuthenticationObtient le comportement d'authentification du service.
Propriété publiqueAuthorizationObtient le comportement d'autorisation pour le service hébergé.
Propriété publiqueBaseAddressesObtient les adresses de base utilisées par le service hébergé.
Propriété publiqueChannelDispatchersObtient la collection de répartiteurs de canal utilisés par l'hôte du service.
Propriété publiqueCloseTimeoutObtient ou définit l'intervalle de temps pendant lequel la fermeture de l'hôte du service est autorisée.
Propriété publiqueCredentialsObtient les informations d'identification du service hébergé.
Propriété protégéeDefaultCloseTimeoutObtient l'intervalle de temps par défaut pendant lequel la fermeture de l'hôte du service est autorisée. (Substitue CommunicationObject.DefaultCloseTimeout.)
Propriété protégéeDefaultOpenTimeoutObtient l'intervalle de temps par défaut pendant lequel l'ouverture de l'hôte du service est autorisée. (Substitue CommunicationObject.DefaultOpenTimeout.)
Propriété publiqueDescriptionObtient la description du service hébergé.
Propriété publiqueExtensionsObtient les extensions pour l'hôte du service actuellement spécifié.
Propriété protégéeImplementedContractsRécupère les contrats implémentés par le service hébergé.
Propriété protégéeIsDisposedObtient une valeur qui indique si l'objet de communication a été supprimé. (Hérité de CommunicationObject.)
Propriété publiqueManualFlowControlLimitObtient ou définit la limite de contrôle de flux pour les messages reçus par le service hébergé.
Propriété publiqueOpenTimeoutObtient ou définit l'intervalle de temps pendant lequel l'ouverture de l'hôte du service est autorisée.
Propriété publiqueStateObtient une valeur qui indique l'état actuel de l'objet de communication. (Hérité de CommunicationObject.)
Propriété protégéeThisLockObtient le verrou mutuellement exclusif qui protège l'instance de classe pendant une transition d'état. (Hérité de CommunicationObject.)
Début

  NomDescription
Méthode publiqueAbortProvoque la transition immédiate d'un objet de communication de son état actuel à l'état de fermeture. (Hérité de CommunicationObject.)
Méthode protégéeAddBaseAddressAjoute une adresse de base à l'hôte du service.
Méthode publiqueAddDefaultEndpointsAjoute des points de terminaison de service pour toutes les adresses de base dans chaque contrat trouvé dans l'hôte de service avec la liaison par défaut.
Méthode publiqueAddServiceEndpoint(ServiceEndpoint)Ajoute le point de terminaison de service spécifié au service hébergé.
Méthode publiqueAddServiceEndpoint(String, Binding, String)Ajoute un point de terminaison de service au service hébergé avec un contrat, une liaison et une adresse de point de terminaison spécifiés.
Méthode publiqueAddServiceEndpoint(String, Binding, Uri)Ajoute un point de terminaison de service au service hébergé avec un contrat, une liaison et un URI contenant l'adresse de point de terminaison spécifiés.
Méthode publiqueAddServiceEndpoint(String, Binding, String, Uri)Ajoute un point de terminaison de service au service hébergé avec un contrat, une liaison, une adresse de point de terminaison et un URI spécifiés contenant l'adresse à partir de laquelle il écoute.
Méthode publiqueAddServiceEndpoint(String, Binding, Uri, Uri)Ajoute un point de terminaison de service au service hébergé avec le contrat, la liaison et les URI spécifiés contenant les adresses d'écoute et de point de terminaison.
Méthode protégéeApplyConfigurationCharge les informations de description du service à partir du fichier de configuration et les applique au runtime en cours de construction.
Méthode publiqueBeginClose(AsyncCallback, Object)Commence une opération asynchrone pour fermer un objet de communication. (Hérité de CommunicationObject.)
Méthode publiqueBeginClose(TimeSpan, AsyncCallback, Object)Commence une opération asynchrone pour fermer un objet de communication avec un délai d'attente spécifié. (Hérité de CommunicationObject.)
Méthode publiqueBeginOpen(AsyncCallback, Object)Commence une opération asynchrone pour ouvrir un objet de communication. (Hérité de CommunicationObject.)
Méthode publiqueBeginOpen(TimeSpan, AsyncCallback, Object)Commence une opération asynchrone pour ouvrir un objet de communication dans un intervalle de temps spécifié. (Hérité de CommunicationObject.)
Méthode publiqueClose()Provoque la transition d'un objet de communication de son état actuel à l'état fermé. (Hérité de CommunicationObject.)
Méthode publiqueClose(TimeSpan)Provoque la transition d'un objet de communication de son état actuel à l'état fermé dans un intervalle de temps spécifié. (Hérité de CommunicationObject.)
Méthode protégéeCreateDescriptionEn cas d'implémentation dans une classe dérivée, crée la description du service hébergé.
Méthode publiqueEndCloseTermine une opération asynchrone pour fermer un objet de communication. (Hérité de CommunicationObject.)
Méthode publiqueEndOpenTermine une opération asynchrone pour ouvrir un objet de communication. (Hérité de CommunicationObject.)
Méthode publiqueEquals(Object)Détermine si l'objet spécifié est identique à l'objet actuel. (Hérité de Object.)
Méthode protégéeFaultProvoque la transition d'un objet de communication de son état actuel à l'état d'erreur. (Hérité de CommunicationObject.)
Méthode protégéeFinalize Autorise un objet à tenter de libérer des ressources et d'exécuter d'autres opérations de nettoyage avant qu'il ne soit récupéré par l'opération garbage collection. (Hérité de Object.)
Méthode protégéeGetCommunicationObjectTypeObtient le type d'objet de communication. (Hérité de CommunicationObject.)
Méthode publiqueGetHashCodeSert de fonction de hachage par défaut. (Hérité de Object.)
Méthode publiqueGetTypeObtient le Type de l'instance actuelle. (Hérité de Object.)
Méthode publiqueIncrementManualFlowControlLimitAugmente la limite du flux de messages vers le service hébergé d'un incrément spécifié.
Méthode protégéeInitializeDescriptionCrée et initialise l'hôte du service à l'aide des descriptions du contrat et du service.
Méthode protégéeInitializeRuntimeInitialise le runtime pour l'hôte du service.
Méthode protégéeLoadConfigurationSectionCharge l'élément de service à partir du fichier de configuration du service hébergé.
Méthode protégéeMemberwiseCloneCrée une copie superficielle de l'objet Object actuel. (Hérité de Object.)
Méthode protégéeOnAbortAbandonne le service. (Substitue CommunicationObject.OnAbort().)
Méthode protégéeOnBeginCloseLance une opération asynchrone appelée à la fermeture de l'hôte du service. (Substitue CommunicationObject.OnBeginClose(TimeSpan, AsyncCallback, Object).)
Méthode protégéeOnBeginOpenLance une opération asynchrone appelée à l'ouverture de l'hôte du service. (Substitue CommunicationObject.OnBeginOpen(TimeSpan, AsyncCallback, Object).)
Méthode protégéeOnCloseFerme le service hébergé, y compris ses répartiteurs de canal et les contextes d'instance et les écouteurs associés. (Substitue CommunicationObject.OnClose(TimeSpan).)
Méthode protégéeOnClosedLibère les ressources utilisées par l'hôte du service. (Substitue CommunicationObject.OnClosed().)
Méthode protégéeOnClosingAppelé pendant la transition d'un objet de communication à l'état de fermeture. (Hérité de CommunicationObject.)
Méthode protégéeOnEndCloseExécute une opération asynchrone appelée à la fermeture de l'hôte du service. (Substitue CommunicationObject.OnEndClose(IAsyncResult).)
Méthode protégéeOnEndOpenExécute une opération asynchrone appelée à l'ouverture de l'hôte du service. (Substitue CommunicationObject.OnEndOpen(IAsyncResult).)
Méthode protégéeOnFaultedInsère le traitement sur un objet de communication après sa transition vers l'état d'erreur en raison de l'appel d'une opération d'erreur synchrone. (Hérité de CommunicationObject.)
Méthode protégéeOnOpenOuvre les répartiteurs de canal. (Substitue CommunicationObject.OnOpen(TimeSpan).)
Méthode protégéeOnOpenedObtient les informations d'identification et le comportement d'autorisation et d'authentification du service pour le service hébergé. (Substitue CommunicationObject.OnOpened().)
Méthode protégéeOnOpeningAppelé pendant la transition d'un objet de communication à l'état d'ouverture. (Hérité de CommunicationObject.)
Méthode publiqueOpen()Provoque la transition d'un objet de communication de l'état créé à l'état ouvert. (Hérité de CommunicationObject.)
Méthode publiqueOpen(TimeSpan)Provoque la transition d'un objet de communication de l'état créé à l'état ouvert dans un intervalle de temps spécifié. (Hérité de CommunicationObject.)
Méthode protégéeReleasePerformanceCountersLibère les compteurs de performance du service et du répartiteur de canal pour le service hébergé.
Méthode publiqueSetEndpointAddressDéfinit l'adresse du point de terminaison spécifiée sur l'adresse spécifiée.
Méthode protégéeThrowIfDisposedRenvoie une exception si l'objet de communication est supprimé. (Hérité de CommunicationObject.)
Méthode protégéeThrowIfDisposedOrImmutableRenvoie une exception si la propriété State de l'objet de communication n'a pas pour valeur l'état Created. (Hérité de CommunicationObject.)
Méthode protégéeThrowIfDisposedOrNotOpenRenvoie une exception si l'objet de communication n'est pas dans l'état Opened. (Hérité de CommunicationObject.)
Méthode publiqueToStringRetourne une chaîne qui représente l'objet actif. (Hérité de Object.)
Début

  NomDescription
Événement publicClosedSe produit lorsqu'un objet de communication passe à l'état fermé. (Hérité de CommunicationObject.)
Événement publicClosingSe produit lorsqu'un objet de communication passe à l'état de fermeture. (Hérité de CommunicationObject.)
Événement publicFaultedSe produit lorsqu'un objet de communication passe à l'état d'erreur. (Hérité de CommunicationObject.)
Événement publicOpenedSe produit lorsqu'un objet de communication passe à l'état ouvert. (Hérité de CommunicationObject.)
Événement publicOpeningSe produit lorsqu'un objet de communication passe à l'état d'ouverture. (Hérité de CommunicationObject.)
Événement publicUnknownMessageReceivedSe produit lorsqu'un message inconnu est reçu.
Début

  NomDescription
Implémentation d'interface expliciteMéthode privéeIDisposable.DisposeFerme l'hôte du service.
Début

Utilisez la classe ServiceHostBase pour créer des hôtes fournissant un modèle de programmation personnalisé. Le modèle de programmation du service Windows Communication Foundation (WCF) utilise la classe ServiceHost.

Remarque spéciale destinée aux utilisateurs C++ managés dérivés de cette classe :

  • Placez votre code de nettoyage dans (On)(Begin)Close (et/ou OnAbort), pas dans un destructeur.

  • Évitez les destructeurs ; ils provoquent la génération automatique de IDisposable par le compilateur.

  • Évitez les membres sans référence ; ils peuvent provoquer la génération automatique de IDisposable par le compilateur.

  • Évitez les finaliseurs ; si vous en incluez un, vous devrez supprimer l'avertissement de génération et appeler SuppressFinalize(Object) et le finaliseur proprement dit à partir de (On)(Begin)Close (et/ou OnAbort) pour émuler ce qui aurait été le comportement IDisposable généré automatiquement.

Cet exemple utilise la classe ServiceHost dérivée de ServiceHostBase.


// Host the service within this EXE console application.
public static void Main()
{
  using (ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService)))
  {
    try
    {
      // Open the ServiceHost to start listening for messages.
      serviceHost.Open();

        // The service can now be accessed.
      Console.WriteLine("The service is ready.");
      Console.WriteLine("Press <ENTER> to terminate service.");
      Console.ReadLine();

      // Close the ServiceHost.
      serviceHost.Close();
    }
    catch (TimeoutException timeProblem)
    {
      Console.WriteLine(timeProblem.Message);
      Console.ReadLine();
    }
    catch (CommunicationException commProblem)
    {
      Console.WriteLine(commProblem.Message);
      Console.ReadLine();
    }
  }
}


.NET Framework

Pris en charge dans : 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Ajouts de la communauté

AJOUTER
Microsoft réalise une enquête en ligne pour recueillir votre opinion sur le site Web de MSDN. Si vous choisissez d’y participer, cette enquête en ligne vous sera présentée lorsque vous quitterez le site Web de MSDN.

Si vous souhaitez y participer,
Afficher:
© 2014 Microsoft