Question


j'ai suivi les étapes suivantes pour construire un WebService dans SharePoint:

  1. A créé un nouveau projet en utilisant WSPBuilder.
  2. Ajout d'un 'WebService' (Ajouter un nouveau service Web dans le dossier layouts)
  3. Faites un WSBBuilder "Déployer"
  4. Le Webservice est accessible via http: //server/_layouts/MyWebService.asmx

Est-ce exact? Ou dois-je suivre les étapes décrites à la MSDN pour créer ma propre .wsdl / .disco les fichiers et les déployer sur / _ vti_bin pour rendre mon WebService accessible via http: //server/_vti_bin/MyWebService.asmx ?
(Note:. les étapes manuelles de MSDN peuvent être automatisés en utilisant SPDev


J'ai aussi trouvé ce blog: http://jamestsai.net/Blog/post/Where-do-you-deploy-custom-SharePoint-web-service-files-to-%28asmx-discoaspx-and-wsdlaspx%29.aspx qui décrit la différence entre _layouts et _vti_bin.


Question Quelle est la meilleure façon de suivre
Et comment cela peut-il être automatisé via la construction dans VS2008 ou lors du déploiement du WSP?

Était-ce utile?

La solution 2

  

l'article que vous faites référence à la fin   de votre question répond vraiment:   services Web personnalisés doivent être placés   en _vti_bin.

     

Je commence habituellement en les ajoutant à   _Layouts mais c'est à seulement pour être en mesure de définir mes fichiers de découverte, etc. (comme   décrit dans la spécification MSDN   vous mentionnez).

J'ai créé un outil de ligne de commande simple qui génère * et * wsdl.aspx disco.aspx SharePoint fichiers compatibles de l'ensemble WebService (dll) dans le projet.


L'outil peut être trouvé à l'adresse http://wsdlgenerator.codeplex.com .

Lorsque vous utilisez ce dans la construction de votre WebServices SharePoint projet comme celui-ci:

Ajoutez la ligne suivante à la "Post Build" événement :

"$(ProjectDir)Tools\WSDLGenerator.exe" --input "$(TargetPath)" --outputfolder "$(ProjectDir)12\ISAPI" --spwsdl --spdisco

Les fichiers WSDL et discothèque sont automatiquement créés et placés dans le dossier ISAPI.

Autres conseils

l'article que vous faites référence à la fin de votre question répond vraiment: les services Web personnalisés doivent être placés dans _vti_bin.

Je commence habituellement en les ajoutant à _layouts mais c'est seulement pour être en mesure de définir mes fichiers de découverte, etc. (comme décrit dans la spécification MSDN vous mentionnez).

_vti_bin est un répertoire virtuel mappé sur le dossier 12 / ISAPI, de sorte que vous pouvez déployer à cet élément en utilisant dans votre manifeste de solution. Voir un exemple

Licencié sous: CC-BY-SA avec attribution
Non affilié à sharepoint.stackexchange
scroll top