Seit gestern mit Visual Studio 2012 RC gestartet, haben wir eine WCF-Lösung. Immer wenn ich versuche, den "Hinzufügen / Entfernen-Verweis" -Dialog in einer anderen Lösung zu verwenden, erhalte ich nach dem Hinzufügen des Dienstes einen Fehler.
Fehler 1 Reference.svcmap: Fehler beim Generieren von Code für den Dienst Referenz 'DPService'. Kann nicht importieren wsdl: portType Detail: An Ausnahme wurde beim Ausführen einer WSDL-Import-Erweiterung ausgelöst: System.ServiceModel.Description.DataContractSerializerMessageContractImporter Fehler: Geben Sie "WebSupergoo.ABCpdf8.Objects.Bookmark" ist eine rekursive Sammlungsdatenvertrag, der nicht unterstützt wird. Ändern Sie die Definition der Sammlung 'WebSupergoo.ABCpdf8.Objects.Bookmark' zu entfernen Sie Referenzen auf sich selbst. XPath zu Fehler Quelle: //wsdl:definements[@targetNamespace='http://tempuri.org/']/wsdl:portType[@name='IGQDynamicPackaging '] Wsdl: binding konnte nicht importiert werden. Detail: Es ist ein Fehler beim Importieren von wsdl: portType, von dem die wsdl: -Bindung abhängig ist. XPath zu wsdl: Porttyp: //wsdl:definements[@targetNamespace='http://tempuri.org/']/wsdl:portType[@name='IGQDynamicPackaging '] XPath zu Fehler Quelle: //wsdl:definitions[@targetNamespace='http://tempuri.org/']/wsdl:binding[@name='WSHttpContextBinding_IGQDynamicPackaging '] Import von wsdl: port nicht möglich Detail: Beim Importieren von a ist ein Fehler aufgetreten wsdl: Bindung, von der der wsdl: -Port abhängig ist. XPath zu WSDL: Bindung: //wsdl:definitions[@targetNamespace='http://tempuri.org/']/wsdl:binding[@name='WSHttpContextBinding_IGQDynamicPackaging '] XPath zu Fehler Quelle: //wsdl:definations[@targetNamespace='http://tempuri.org/']/wsdl:service[@name='GQService']/wsdl:port[@name='WSHttpContextBinding_IGQDynamicPackaging '] App_WebReferences / DPService /
Beachten Sie Folgendes: Der genannte Dienst funktionierte ordnungsgemäß, wenn ich VS 2010 verwendet habe. Als Referenz verwenden wir die Option "Wiederverwendung von Typen in referenzierten Assemblys" und die Option "Wiederverwendung von Typen in allen referenzierten Assemblys" aktiviert.
>Die gleichen Einstellungen funktionierten mit VS 2010 und wir können Referenzen hinzufügen. Aber jetzt, nach der Installation von VS 2012 RC, kann ich die Referenz für VS 2010 und VS2012 nicht hinzufügen. Irgendeine Lösung oder Arbeit dafür.
Ich möchte nur einen Rollback ausführen und VS2010 verwenden, "add service" gibt den gleichen Referenzfehler in VS 2010 jetzt.
Deinstallieren vs 2012, vs 2010 wird Ihnen "Unbekannter Fehler", eine kleine Fehlermeldung, Reparatur vs 2010 (neu installieren), und es wird OK!
Ich hatte ein ähnliches Problem, und ich habe das Kontrollkästchen "Reuse Types in referenzierten Assemblys" im Dialogfeld "Configure Service reference" deaktiviert.
1) Klicken Sie mit der rechten Maustaste auf Service Referenz 2) Wählen Sie Dienstreferenz konfigurieren 3) Deaktivieren Sie "Reuse Typen in referenzierten Baugruppen"
Ich bin mir nicht sicher, welche Konsequenzen das hat, aber es hat mich durchgehalten, den Verweis wieder verwenden zu können.
Es sieht so aus, als ob die 'CustomerServiceReference' in zwei Assemblys definiert wurde, auf die von Ihrem Projekt verwiesen wird. Der Code-Generator hat keine Ahnung, welcher davon verwendet werden sollte.
Um dieses Problem loszuwerden, genau wie Lars gesagt hat. Sie können Ihre Servicereferenz konfigurieren, indem Sie auf der Registerkarte "Erweiterte Optionen" die Option "Wiederverwendungstypen in allen referenzierten Assemblys" deaktivieren (indem Sie "Wiederverwendungstypen in angegebenen referenzierten Assemblys" auswählen). Sie können alle Assemblys auswählen, mit Ausnahme der Assembly, die dieses Problem verursacht (wodurch CustomerServiceReference definiert wird, wie in der Fehlermeldung angegeben.)
Tags und Links wcf visual-studio-2012