Warum generiert this WSDL file in VS2008 einen leeren Service-Proxy?Warum generiert diese WSDL-Datei in VS2008 einen leeren Service-Proxy?
Wenn Sie die generierte Reference.cs-Datei betrachten, ist sie leer. Irgendwelche Ideen?
Warum generiert this WSDL file in VS2008 einen leeren Service-Proxy?Warum generiert diese WSDL-Datei in VS2008 einen leeren Service-Proxy?
Wenn Sie die generierte Reference.cs-Datei betrachten, ist sie leer. Irgendwelche Ideen?
Haben Sie Ihre Fehlerliste lesen? Ich habe die folgenden:
Custom tool warning: There was a validation error on a schema generated during export:
Source:
Line: 144 Column: 12
Validation Error: Wildcard '##any' allows element 'http://search.yahoo.com/mrss:text', and causes the content model to become ambiguous. A content model must be formed such that during validation of an element information item sequence, the particle contained directly, indirectly or implicitly therein with which to attempt to validate each item in the sequence in turn can be uniquely determined without examining the content or attributes of that item, and without any information about the items in the remainder of the sequence.
Custom tool warning: Cannot import wsdl:portType
Detail: An exception was thrown while running a WSDL import extension: System.ServiceModel.Description.XmlSerializerMessageContractImporter
Error: Cannot import invalid schemas. Compilation on the XmlSchemaSet failed.
XPath to Error Source: //wsdl:definitions[@targetNamespace='http://fliqz.com/services/search/20071001']/wsdl:portType[@name='IVideoSearchService']
Custom tool warning: Cannot import wsdl:binding
Detail: There was an error importing a wsdl:portType that the wsdl:binding is dependent on.
XPath to wsdl:portType: //wsdl:definitions[@targetNamespace='http://fliqz.com/services/search/20071001']/wsdl:portType[@name='IVideoSearchService']
XPath to Error Source: //wsdl:definitions[@targetNamespace='http://tempuri.org/']/wsdl:binding[@name='basicHttpBinding_IVideoSearchService_20071001']
Custom tool warning: Cannot import wsdl:port
Detail: There was an error importing a wsdl:binding that the wsdl:port is dependent on.
XPath to wsdl:binding: //wsdl:definitions[@targetNamespace='http://tempuri.org/']/wsdl:binding[@name='basicHttpBinding_IVideoSearchService_20071001']
XPath to Error Source: //wsdl:definitions[@targetNamespace='http://tempuri.org/']/wsdl:service[@name='VideoSearchService']/wsdl:port[@name='basicHttpBinding_IVideoSearchService_20071001']
Custom tool error: Failed to generate code for the service reference 'ServiceReference1'. Please check other error and warning messages for details.
Edit: ich einige graben tat, und ich kam in den folgenden Links:
ich folgende versucht, die Anweisungen von ScottAnderson in der ersten Verbindung, konnte jedoch keinen Client-Proxy mit ihnen generieren. Vielleicht kannst du mehr Glück haben.
Es erscheint der Grund dies nicht der Fall funktioniert, weil Fliqz verwendet, ist XmlSerializer statt Datacontract/Message für seine Vertragsdefinitionen und WCF will nicht schön, mit ihnen spielen und unangemessenen WSDL erzeugt. Wenn Sie den ursprünglichen Vertrag kontrollieren könnten, könnten Sie das Problem möglicherweise beheben und auf Ihrem Weg sein; Leider haben Sie möglicherweise kein Glück.
Wenn Sie die ServiceContract-Schnittstelle und die verfügbaren Typen abrufen können, können Sie möglicherweise Ihren eigenen Client manuell generieren. Nach einigen der Klassennamen, die ich dort sehe, scheint es, dass Fliqz interne Objekte in ihrem Vertrag aufdeckt, also bezweifle ich, dass Sie sie anrufen und nach einer .dll-Datei fragen könnten, auf die Sie sich beziehen können.
Sie könnten versuchen, die Schnittstellen- und Daten-/Nachrichtenvertragsarten selbst auszugeben, indem Sie die WSDL und XSDs analysieren. Sieht aber so aus, als wäre es viel Arbeit.
Sorry ich kann nicht mehr helfen. Dies scheint eine Kombination aus schlechter WCF-Legacy-Unterstützung und schlechter Architektur/Design seitens Fliqz zu sein.
Versuchen Sie, es als .NET 2.0 Web Reference hinzuzufügen.
Gehen Sie zu Service-Referenz hinzufügen und klicken Sie dann auf die Schaltfläche "Erweitert". Dann haben Sie die Option, es als .NET 2.0 Web Reference hinzuzufügen. Ich habe das getan und es zur Arbeit gebracht. Ich konnte nicht über den Standard "Add Service Reference"
Ich sehe keine < WSDL: PortType > Elemente in Ihrer WSDL - das könnte das Problem sein.
Erstellen Sie Ihren Dienst auch über eine Live-URL oder einige Dateien auf der Festplatte? Wenn Sie mit „auf der Festplatte“ -Dateien: hast du auch die „wsdl0“ Datei wie hier in dieser Zeile verwiesen:
<wsdl:import namespace="http://fliqz.com/services/search/20071001" location="http://services.fliqz.com/LegacyServices/Services/search/R20071001/service.svc?wsdl=wsdl0"/>
Marc
es ist nicht mein Service ... es ist fliqz.com's – TheSoftwareJedi
Ja, ich verstehe - aber haben Sie Ihren Client-Proxy von der URL erstellt oder haben Sie die WSDL lokal auf die Festplatte heruntergeladen und erstellen Sie Ihren Proxy von dort? Wenn Sie heruntergeladen haben - müssen Sie auch die separaten, zusätzlichen Teile für die WSDL herunterladen (der? Wsdl = wsdl0 Teil und möglicherweise mehr) –
erstellt von der URL. Sie haben eine andere WSDL, die gut funktioniert. – TheSoftwareJedi
Klicken Sie mit der rechten Maustaste auf Service-Referenz, klicken Sie auf "Cofigure", deaktivieren Sie die Option "Typen in referenzierten Assemblys wiederverwenden" und klicken Sie auf "OK". Versuchen Sie, die Servicereferenz zu aktualisieren. Das hat für mich funktioniert!
diese Fehler zu sehen, und bewaffnet mit dem Wissen, dass dies nicht meine WSDL-Datei ist, was schlagen Sie vor? – TheSoftwareJedi
Es ist nicht deine WSDL? Hmm ... das ist schwierig. Sie könnten versuchen, durch die WSDL und XSDs zu gehen, um Ihre Service-Schnittstelle und DTO-Objekte von Hand zu erstellen und den Client dann manuell zu konfigurieren, aber das macht wenig Sinn. Haben Sie in VS 2005 mit .NET 3.0 eine Service-Referenz ausprobiert? Das kann ich leider nicht selbst testen ... – Randolpho