Comment publier un Service Web de Visual Studio dans IIS?

j'ai écrit un service web WCF en C#. À l'origine, je l'avais auto-hébergé et j'ai ensuite décidé de l'héberger sur IIS fonctionnant localement sur mon PC. Pendant que le service fonctionne, il y a plusieurs aspects du processus de déploiement que je ne comprends pas:

tout d'abord, L'URL de ce service lorsqu'il est hébergé dans IIS ne correspond pas à ce que j'ai spécifié dans mon web.config. J'avais spécifié http://localhost:8000/MyServices/OrderService " là et ce a été utilisé quand je me suis auto-hébergé. Maintenant que j'ai été déployé sur IIS, L'URL est devenue " "http://localhost/MyServices/OrderService ". Pourquoi L'URL n'est pas récupérée dans mon fichier de configuration?

Deuxièmement, pour héberger le Service Web, j'ai créé un nouveau site Web au sein de IIS (en plus du 'site Web par défaut'existant). - Je définir le chemin d'accès physique c:inetpubwwwroot (aucune idée si c'est correct) et à gauche les autres paramètres par défaut. J'ai ensuite copié mon dossier /bin, mon .svc fichier et de mon site web.la configuration de ce dossier. Est-ce l'équivalent d'un "Répertoire Virtuel'?

enfin, le service n'a pas fonctionné jusqu'à ce que (au sein de IIS) j'ai sélectionné "Convert to application". Pourquoi est-il nécessaire de sélectionner "Convertir en application"?

est-ce que quelqu'un peut m'expliquer ce que la procédure correcte est de publier un simple service web de Visual Studio dans IIS, ou pointer moi à une certaine bonne documentation afin que je puisse comprendre le processus?

****MODIFIER À L'ORIGINAL***** Ayant passé plus de temps à examiner cette question, j'ai trouvé ce qui suit:

  • quand je crée un site Web dans IIS, je lui donne un répertoire physique de c:inetpubwwwroot....etc
  • si je" publie " depuis Visual studio, Tout ce qu'il fait c'est Copier tous les fichiers requis (comme le répertoire /bin, web.config et .svc de fichiers) dans le répertoire physique du site, c'est à dire - c:inetpubwwwroot...

Vous pouvez effectuer la copie manuellement pour le même effet.

la réponse est que l'adresse de base est complètement ignorée lors de l'hébergement sur IIS.

26
demandé sur Community 2011-04-28 16:58:55

1 réponses

si vous utilisez Visual Studio 2010, vous pouvez cliquer avec le bouton droit de la souris sur le projet du service et sélectionner properties . Sélectionnez ensuite l'onglet Web . Dans la section Servers , vous pouvez configurer l'URL. Il y a aussi un bouton pour créer le répertoire virtuel.

14
répondu Nils Magne Lunde 2011-04-29 12:17:59