J'ai un service Web wcf et j'ai besoin de fournir au client les fichiers wsdl.wcf Extrait wsdl du service WCF avec WSDL aplati
Auparavant, j'ai utilisé svcutil sur le fichier .dll et tout allait bien.
Cependant, récemment, j'ai mis en œuvre l'usine pour Flaten le fichier wsdl (re: http://wcfextras.codeplex.com/). Mes questions sont les suivantes: Est-il utile d'utiliser svcutil sur le fichier .svc pour extraire les fichiers .WSDL aplatis ou peut-être d'une manière ou d'une autre frapper le service Web lorsqu'il est exécuté sur le serveur webdev local pour récupérer les fichiers .WSDL ? Pour autant que je sache, si je devais naviguer vers mon serveur de développement web local (http://localhost:2916/Service.svc?wsdl) et si je devais voir la source et enregistré cela comme .wsdl que c'est faux et ne fournirait pas tous les pertinents information.
Note: Voir ci-dessous pour savoir comment l'usine est utilisé dans le fichier .svc ....
<% @ServiceHost Factory="CompanyName.ServiceModel.Extensions.Description.FlatWsdlServiceHostFactory" language=c# Service="CompanyName.WebServices.Service"%>
Merci, Steven
Bonjour Marc, merci pour votre aide .... question rapide, j'ai pu ajouter le mexHttpBinding et obtenir le wsdl en utilisant svcutil/t: métadonnées Savez-vous pourquoi il crée deux fichiers? filename1.wsdl filename.wsdl Le fichier avec le '1' dans le nom a beaucoup de savon: savon de liaison: savon de corps: opération, ext ... alors que le fichier sans le '1' dans le nom vraiment contient uniquement les balises wsdl et xsd. Est-ce que je fournirais à la fois au client? Merci encore pour votre aide. Steven. – stevenrosscampbell
Je crois que l'exécution de WCF va générer un WSDL par espace de noms, si je ne me trompe pas. Vous pouvez aplatir le XSD dans le WSDL mais il semble que vous ne pouvez pas "fusionner" deux parties WSDL avec des espaces de noms différents. Et oui, je crois que vous avez besoin des deux fichiers pour fonctionner correctement (l'un référence l'autre) –
Hey Marc Merci encore. Bonnes nouvelles, le client a décidé qu'ils sont prêts à frapper le service Web directement :) Pas besoin de moi pour générer plus (j'ai appris beaucoup avec votre aide si) Tous les meilleurs. Steven – stevenrosscampbell