J'ai une application fonctionnelle Silverlight 4 (VS2010, SL4, WCF RIA, hébergé sur ma boîte de devise à l'aide de Cassini, Windows 7 de 64 bits). Dans le répertoire Clientbin, j'ai un fichier .svc qui décrit mon service: lorsque je navigue sur Vous avez créé un service. Tester
Ce service, vous devrez créer
un client et utilisez-le pour appeler le
un service. Vous pouvez faire cela en utilisant le
SVCutil.exe outil de la ligne de commande
Avec la syntaxe suivante:
svcutil.exe http: // localhost: 52878 / clientbin / myApp-Services-Myservice .svc? WSDL P>
blockQuote> Je veux accéder à ce service à partir d'une application de service Windows. Je crois comprendre que j'ai besoin d'activer les points de fin de savon afin de faire cela. Donc, j'ajoute ce qui suit à mon fichier web.config: p> Premièrement, Intellisense se plaint de la présence de la balise, en disant: P> Le système d'élément.ServiceModel a
Élément enfant non valide Domainservices. P>
blockQuote> Deuxièmement, l'application Silverlight susmentionnée cesse de fonctionner, probablement parce que ce changement enfreint les services Web sous-jacents. P> troisièmement, il apparaît que le système.ServiceModel.Domainsting.Hosting Assembly ne contiennent effectivement le type SOAPXXMLENDPESSORY; Si j'essaie de parcourir le service après avoir ajouté ce qui précède à web.config, je vois: p> ne pouvait pas charger de type
'System.servicemodel.domainservices.hosting.soapxmlendPointFactory'
de l'assemblée
'System.ServiceModel.Domainservices.Hosting,
Version = 4.0.0.0, culture = neutre,
PublickeyToken = 31bf3856ad364E35 '. P>
blockQuote> Si j'inspecte l'assemblage à l'aide du réflecteur, je vois qu'il contient les types de DomainServiceEventPointPactory et POXBINAINDENDAnDactory, mais pas de SOAPXMENDPOeFactory. P> Quelqu'un pourrait-il me laisser savoir comment je devrais faire cela? Je ne peux pas croire que cela devrait être si difficile de consommer un service de WCF RIA dans une autre application Silverlight! P> P>
4 Réponses :
Avez-vous essayé juste d'exécuter p>
svcoktil.exe http: // localhost: 52878 / clientbin / myApp-Services-myserService.svc? WSDL P> blockQuote>
Alternativement, avez-vous installé la boîte à outils RIA Services? http://www.microsoft. Com / Téléchargements / Détails.aspx? FamilyID = 7B43BAB5-A8FF-40ED-9C84-11ABB9CDA559 & displayLang = fr P>
Il est nécessaire pour les points d'extrémité SOAP et JSON P>
J'ai installé la boîte à outils de services RIA (de Microsoft.com/downloads/.../a>) a modifié la déclaration des domaines d'entretien pour utiliser l'espace de noms et l'assemblage correct, et cela fonctionne maintenant. Merci!
La classe microsoft.servicemodel.domainservices.hosting p>
blockQuote>
Assemblage, qui est inclus dans la boîte à outils Silverlight. P>
voir ici p> SOAPXMLENDPOeFactory code> fait partie de la p>
au lieu de ... p>
système.servicemodel.domainservices.Hosting p> blockQuote>
Utilisez l'assemblage ... p>
microsoft.servicemodel.domainservices.hosting p> blockQuote>
de la boîte à outils de WCF RIA Services. Il contient le type
SOAPXMLENDPOeFactory code>. P>
L'emplacement par défaut est ...
% des fichiers de programme% \ microsoft sdks \ ria services \ v1.0 \ toolkit \ bibliothèques \ serveur code> p> P>
Merci! Il m'a fallu un moment pour voir la différence entre les deux dlls.
<sectionGroup name="system.serviceModel"> <section name="domainServices" type="System.ServiceModel.DomainServices.Hosting.DomainServicesSection, System.ServiceModel.DomainServices.Hosting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" allowDefinition="MachineToApplication" requirePermission="false" /> </sectionGroup> Declare this in the ConfigSections. It's important to include the sectionGroup correctly
Quelques suggestions du forum SL ( forums.silverlight.net/forums/p/180880 /409333.cx ) Inclure la copie de réglage local sur true sur le système System.ServiceModel.domainsting.Hosting Assembly (ne fonctionne pas comme le problème est que le type spécifié est absolu de cet ensemble) et en garantissant que le .NET. Framework 4.0 est installé (c'est).