Hôte de service WCF (WcfSvcHost.exe)WCF Service Host (WcfSvcHost.exe)

Hôte de Service Windows Communication Foundation (WCF) (WcfSvcHost.exe) vous permet de lancer le débogueur de Visual Studio (F5) pour héberger et tester un service que vous avez implémenté automatiquement.Windows Communication Foundation (WCF) Service Host (WcfSvcHost.exe) allows you to launch the Visual Studio debugger (F5) to automatically host and test a service you have implemented. Vous pouvez ensuite tester le service en utilisant le Client Test WCF (WcfTestClient.exe) ou votre propre client, pour rechercher et corriger les erreurs potentielles.You can then test the service using WCF Test Client (WcfTestClient.exe), or your own client, to find and fix any potential errors.

Hôte de service WCFWCF Service Host

Hôte de Service WCF énumère les services dans un projet de service WCF, charge la configuration du projet et instancie un hôte pour chaque service qu’il trouve.WCF Service Host enumerates the services in a WCF service project, loads the project’s configuration, and instantiates a host for each service that it finds. L’outil est intégré à Visual Studio via le modèle de Service WCF et est appelé lorsque vous commencez à déboguer votre projet.The tool is integrated into Visual Studio through the WCF Service template and is invoked when you start to debug your project.

En utilisant l’hôte de Service WCF, vous pouvez héberger un service WCF (dans un projet de bibliothèque de service WCF) sans écrire de code supplémentaire ou se limiter à un hôte spécifique pendant le développement.By using WCF Service Host, you can host a WCF service (in a WCF service library project) without writing extra code or committing to a specific host during development.

Note

Hôte de Service WCF ne prend pas en charge la confiance partielle.WCF Service Host does not support Partial Trust. Si vous souhaitez utiliser un Service WCF en confiance partielle, n’utilisez pas le modèle de projet de bibliothèque de Service WCF dans Visual Studio pour générer votre service.If you want to use a WCF Service in Partial Trust, do not use the WCF Service Library Project template in Visual Studio to build your service. Au lieu de cela, créez un nouveau site Web dans Visual Studio en choisissant le modèle de site Web de Service WCF, qui peut héberger le service dans un serveur Web sur lequel une confiance partielle WCF est pris en charge.Instead, create a New WebSite in Visual Studio by choosing the WCF Service WebSite template, which can host the service in a WebServer on which WCF Partial Trust is supported.

Types de projet hébergés par l'hôte de service WCFProject Types hosted by WCF Service Host

Hôte de Service WCF peut héberger les types de projet de bibliothèque de service WCF suivants : bibliothèque du Service WCF, bibliothèque de Service de Workflow séquentiel, bibliothèque de Service de Workflow de Machine état et bibliothèque du Service de Syndication.WCF Service Host can host the following WCF service library project types: WCF Service Library, Sequential Workflow Service Library, State Machine Workflow Service Library and Syndication Service Library. Hôte de Service WCF peut également héberger les services qui peuvent être ajoutés à un projet de bibliothèque de service à l’aide du ajouter un élément fonctionnalité.WCF Service Host can also host those services that can be added to a service library project using the Add Item functionality. Cela inclut le Service WCF Service ordinateur d’état WF, de Service séquentiel WF XAML Service de Machine d’état WF et de Service séquentiel WF de XAML.This includes WCF Service, WF State Machine Service, WF Sequential Service, XAML WF State Machine Service and XAML WF Sequential Service.

Toutefois, il est à noter que l'outil ne vous aidera pas à configurer un hôte.You should note, however, that the tool will not help you to configure a host. Pour cette tâche, vous devez modifier le fichier App.config manuellement.For this task, you must manually edit the App.config file. L'outil ne permet pas non plus de valider les fichiers de configuration définis par l'utilisateur.The tool also does not validate user-defined configuration files.

Attention

Vous ne devez pas utiliser hôte de Service WCF à héberger des services dans un environnement de production, car il n’était pas été conçu à cet effet.You should not use WCF Service Host to host services in a production environment, as it was not engineered for this purpose. Hôte de Service WCF ne prend pas en charge la fiabilité, la sécurité et la configuration requise de la facilité de gestion d’un tel environnement.WCF Service Host does not support the reliability, security, and manageability requirements of such an environment. Utilisez plutôt IIS car cette solution présente une fiabilité et des fonctionnalités de surveillance plus élevées ; elle constitue en outre la solution recommandée pour les services d’hébergement.Instead, use IIS since it provides superior reliability and monitoring features, and is the preferred solution for hosting services. Une fois le développement de vos services terminée, vous devez migrer les services à partir de l’hôte de Service WCF sur IIS.Once development of your services is complete, you should migrate the services from WCF Service Host to IIS.

Scénarios d'utilisation de l'hôte de service WCF dans Visual StudioScenarios for Using WCF Service Host inside Visual Studio

Le tableau suivant répertorie tous les paramètres dans le arguments de ligne de commande boîte de dialogue, qui se trouve en double-cliquant sur votre projet dans l’Explorateur de Solutions dans Visual Studio, en sélectionnant Propriétés, puis en sélectionnant le déboguer onglet et en cliquant sur démarrer le projet.The following table lists all the parameters in the Command line arguments dialog box, which can be found by right-clicking your project in Solutions Explorer in Visual Studio, selecting Properties, then selecting the Debug tab and clicking Start Project. Ces paramètres sont utiles pour configurer l’hôte de Service WCF.These parameters are useful in configuring WCF Service Host.

ParamètreParameter SignificationMeaning
/client Paramètre facultatif qui spécifie le chemin d’accès à un fichier exécutable à utiliser une fois les services hébergés.An optional parameter that specifies the path to an executable to run after the services are hosted. Cette opération lance le Client Test WCF hébergement effectué.This launches WCF Test Client following hosting.
/clientArg Spécifie une chaîne en tant qu’argument passé à l’application cliente personnalisée.Specify a string as an argument that is passed to the custom client application.
/? Affiche le texte de l'aide.Displays the help text.

Utilisation du client test WCFUsing WCF Test Client

Une fois que vous créez un projet de service WCF et appuyez sur F5 pour démarrer le débogueur, hôte de Service WCF démarre tous les services qu’il trouve dans votre projet d’hébergement.After you create a new WCF service project and press F5 to start the debugger, WCF Service Host starts hosting all the services it finds in your project. Client Test WCF s’ouvre automatiquement et affiche la liste des points de terminaison de service définis dans le fichier de configuration.WCF Test Client automatically opens and displays a list of service endpoints defined in the configuration file. Dans la fenêtre principale, vous pouvez tester les paramètres et appeler votre service.From the main window, you can test the parameters and invoke your service.

Pour vous assurer que le Client Test WCF est utilisé, cliquez sur votre projet dans l’Explorateur de Solutions dans Visual Studio, sélectionnez propriétés, puis sélectionnez le déboguer onglet. Cliquez sur démarrer le projet et vous assurer que ce qui suit s’affiche dans le arguments de ligne de commande boîte de dialogue.To make sure that WCF Test Client is used, right-click your project in Solutions Explorer in Visual Studio, select Properties, then select the Debug tab. Click Start Project and ensure that the following appears in the Command line arguments dialog box.

/client:WcfTestClient.exe

Utilisation d'un client personnaliséUsing a Custom Client

Pour utiliser un client personnalisé, cliquez sur votre projet dans l’Explorateur de Solutions dans Visual Studio, sélectionnez propriétés, puis sélectionnez le déboguer onglet. Cliquez sur démarrer le projet et modifier le /client paramètre dans le arguments de ligne de commande boîte de dialogue pour pointer vers votre client personnalisé, comme indiqué dans l’exemple suivant.To use a custom client, right-click your project in Solutions Explorer in Visual Studio, select Properties, then select the Debug tab. Click Start Project and edit the /client parameter in the Command line arguments dialog box to point to your custom client, as indicated in the following example.

/client:"path/CustomClient.exe"

Lorsque vous appuyez sur F5 pour démarrer le service à nouveau, hôte de Service WCF démarre automatiquement votre client personnalisé lorsque vous lancez le débogueur.When you press F5 to start the service again, WCF Service Host automatically starts your custom client when you launch the debugger.

Vous pouvez également utiliser le paramètre /clientArg: pour spécifier une chaîne en tant qu'argument qui est passé à l'application cliente personnalisée, comme indiqué dans l'exemple suivant.You can also use the /clientArg: parameter to specify a string as an argument that is passed to the custom client application, as indicated in the following example.

/client:"path/CustomClient.exe" /clientArg:"arguments that are passed to Client"

Par exemple, si vous utilisez le modèle de bibliothèque du service de syndication, vous pouvez utiliser les arguments de la ligne de commandes suivante :For example, if you are using the Syndication Service Library template, you can use the following command line arguments,

/client:iexplore.exe /clientArgs:http://localhost:8731/Design_Time_Addresses/Feed1/

Spécification d'aucun clientSpecifying No Client

Pour spécifier qu’aucun client ne sera utilisé après l’hébergement de services WCF, cliquez sur votre projet dans l’Explorateur de Solutions dans Visual Studio, sélectionnez propriétés, puis sélectionnez le déboguer onglet. Cliquez sur démarrer le projet et laissez le arguments de ligne de commande boîte de dialogue vide.To specify that no client will be used after WCF service hosting, right-click your project in Solutions Explorer in Visual Studio, select Properties, then select the Debug tab. Click Start Project and leave the Command line arguments dialog box blank.

Utilisation d'un hôte personnaliséUsing a Custom Host

Pour utiliser un hôte personnalisé, cliquez sur votre projet dans l’Explorateur de Solutions dans Visual Studio, sélectionnez propriétés, puis sélectionnez le déboguer onglet. Cliquez sur démarrer le programme externe et entrez le chemin d’accès complet à l’hôte personnalisé.To use a custom host, right-click your project in Solutions Explorer in Visual Studio, select Properties, then select the Debug tab. Click Start External Program and enter the full path to the custom host. Vous pouvez également utiliser le arguments de ligne de commande boîte de dialogue pour spécifier des arguments à passer à l’hôte.You can also use the Command line arguments dialog box to specify arguments to be passed to the host.

Interface utilisateur de l'Hôte de service WCFWCF Service Host User Interface

Lorsque vous appelez initialement hôte de Service WCF (en appuyant sur F5 dans Visual Studio), le hôte de Service WCF fenêtre s’ouvre automatiquement.When you initially invoke WCF Service Host (by pressing F5 inside Visual Studio), the WCF Service Host window automatically opens. Lors de l’hôte de Service WCF est en cours d’exécution, l’icône du programme apparaît dans la zone de notification.When WCF Service Host is running, the program's icon appears in the notification area. Double-cliquez sur l’icône pour ouvrir le hôte de Service WCF fenêtreDouble-click the icon to open the WCF Service Host window

Lorsque des erreurs surviennent lors de l’hébergement de services, boîte de dialogue hôte de Service WCF s’ouvre et affiche des informations pertinentes.When errors occur during service hosting, WCF Service Host dialog box will open to display relevant information.

Le hôte de Service WCF fenêtre principale contient deux menus :The WCF Service Host main window contains two menus:

  • Fichier: contient le fermer et Exit commandes.File: Contains the Close and Exit commands. Lorsque vous cliquez sur fermer, le hôte de Service WCF boîte de dialogue se ferme, mais les services continuent d’être hébergés.When you click Close, the WCF Service Host dialog box closes, but the services continue to be hosted. Lorsque vous cliquez sur Exit, hôte de Service WCF est également arrêté.When you click Exit, WCF Service Host is also shut down. Cela arrête également tous les services hébergés.This also stops all hosted services.

  • Aide: contient le sur commande qui contient des informations de version.Help: Contains the About command that contains version information. Il contient également le aide commande capable d’ouvrir un fichier d’aide.It also contains the Help command that can open a help file.

La principale hôte de Service WCF fenêtre contient deux zones :The main WCF Service Host window contains two areas:

  • La première zone est Service.The first area is Service. Elle contient une liste qui affiche des informations de base sur tous les services.It contains a list that displays basic information of all services. Ces informations incluent :The information includes:

    • Service: répertorie tous les services.Service: Lists all the services.

    • État: répertorie l’état du service.Status: Lists the status of the service. Les valeurs valides sont « Démarré », « Arrêté » et « Erreur ».Valid values are "Started", "Stopped," and "Error".

    • Adresse des métadonnées: affiche l’adresse des métadonnées des services.Metadata Address: Displays the metadata address of the services.

  • La deuxième zone est des informations supplémentaires.The second area is Additional Information. Il affiche une explication détaillée de l’état du service lors de la ligne de service spécifique est sélectionnée dans le Service zone.It displays a detailed explanation of the service status when the specific service line is selected in the Service area. Si l'état est Erreur, vous pouvez consulter le message d'erreur complet qui s'affiche à l'écran.If the status is Error, you can view the full error message on the screen.

Arrêt de l'Hôte de service WCFStopping WCF Service Host

Vous pouvez arrêter de l’hôte de Service WCF quatre manières suivantes :You can shut down WCF Service Host in the following four ways:

  • Arrêter la session de débogage dans Visual Studio.Stop the debugging session in Visual Studio.

  • Sélectionnez Exit à partir de la fichier menu dans le hôte de Service WCF fenêtre.Select Exit from the File menu in the WCF Service Host window.

  • Sélectionnez Exit à partir du menu contextuel de l’icône de barre d’état d’hôte de Service WCF dans la zone de notification système.Select Exit from context menu of WCF Service Host tray icon in the system notification area.

  • Quitter le Client Test WCF si elle est utilisée.Exit WCF Test Client if it is being used.

Utilisation de l'hôte de service sans privilège d'administrateurUsing Service Host without Administrator privilege

Pour permettre aux utilisateurs sans privilège d’administrateur développer des services WCF, une liste ACL (Access Control List) est créée pour l’espace de noms « http://+:8731/Design_Time_Addresses» lors de l’installation de Visual Studio.To enable users without administrator privilege to develop WCF services, an ACL (Access Control List) is created for the namespace "http://+:8731/Design_Time_Addresses" during the installation of Visual Studio. La liste ACL a la valeur (UI), qui inclut tous les utilisateurs interactifs ayant ouvert une session sur l'ordinateur.The ACL is set to (UI), which includes all interactive users logged on to the machine. Les administrateurs peuvent ajouter ou supprimer des utilisateurs dans cette liste ACL ou ouvrir des ports supplémentaires. Cette liste ACL permet aux utilisateurs d’utiliser l’hôte de Service WCF (wcfSvcHost.exe) sans leur accorder des privilèges d’administrateur.Administrators can add or remove users from this ACL, or open additional ports.This ACL enables users to use the WCF Service Auto Host (wcfSvcHost.exe) without granting them administrator privileges.

Vous pouvez modifier l'accès grâce à l'outil netsh.exe dans Windows VistaWindows Vista, via le compte d'administrateur avec élévation de privilèges.You can modify access using the netsh.exe tool in Windows VistaWindows Vista under the elevated administrator account. Ceci est un exemple d'utilisation de netsh.exe .The following is an example of using netsh.exe.

netsh http add urlacl url=http://+:8001/MyService user=<domain>\<user>  

Pour plus d’informations sur netsh.exe, consultez «comment utiliser l’outil Netsh.exe et les commutateurs de ligne de commande».For more information on netsh.exe, see "How to Use the Netsh.exe Tool and Command-Line Switches".

Voir aussiSee Also

Client test WCF (WcfTestClient.exe)WCF Test Client (WcfTestClient.exe)