2008-10-16 6 views

Répondre

0

Oui, c'est correct ... vous pouvez également les héberger en tant que service Windows

0

L'un des objectifs de WCF est de vous libérer des limitations d'accès au service. Vous pouvez également utiliser Windows Activation Service (WAS) pour Vista et Windows Server 2008.

6

EDIT: Non, ce n'est pas tout à fait vrai.

Ce sont deux options d'hébergement pour WCF. Il y en a d'autres.


orig réponse:

vous pouvez réellement exécuter partout un service WCF, où vous pouvez exécuter du code managé. J'ai vu des services wcf s'exécuter dans un serveur sql, des applications wpf, des services windows et même un service fonctionnant sous Linux sur un mono.

10

vous pouvez commencer un processus d'accueil WCF dans:

  • Windows Forms App
  • Console App
  • service Windows
  • IIS 6 (uniquement l'hébergement HTTP)
  • IIS 7 - WAS (Toutes les fixations sont prises en charge)

Chacun d'entre eux a un avantage ou un inconvénient avantages. Cette page donne d'excellentes informations sur les options d'hébergement: http://msdn.microsoft.com/en-us/library/bb332338.aspx.

1

Il y a une ServiceHost de classe définie dans WCF qui vous permet d'héberger un service dans une application comme ceci:

using (ServiceHost host = new ServiceHost(typeof(MyService)) 
{ 
    host.Open(); 

    WaitForClose(); 

    host.Close(); 
} 

exécutant IIS dans Windows XP SP2 +, Vista, 2003 ou 2008 peut héberger des services WCF.

0

J'ai un service WCF qui a besoin de fonctionner en tant que service dans IIS 7. Le problème est que pour qu'il puisse commencer, je dois appeler manuellement via le navigateur par exemple http://site/myservice.svc.

Existe-t-il un moyen d'appeler IIS et de démarrer le service hôte/wcf lorsque le pool d'applications est redémarré?

Ma préférence serait d'éviter un service Windows et aller avec IIS/WAS

+0

Cela devrait probablement être une question distincte de sa propre au lieu d'une réponse. –