Fehler beim Verzehr service : Der name des Typs ‘AAA' existiert nicht in der Art ‘YYY.YYY'
Ich versuche zu verbrauchen WCF 4.0 service in meiner Anwendung. Ich gebaut, getestet und implementiert den service von Grund auf. Der service funktioniert in der WCF test client und verbraucht werden kann, in einem anderen test-Projekt das ich gebaut habe. Das problem ist, diese einer bestimmten Anwendung... das einzige, was zählt, wie es ist der Grund baute ich den service.
Wenn ich die Anwendung erstellen nach Referenzierung der service, den ich erhalten eine Fehlermeldung. Der Fehler "Der name des Typs 'AAA' existiert nicht in der Art 'YYY.YYY' ".
Projekt verbraucht der Dienst mit dem Namen 'YYY.Web' und in die 'YYY' namespace.
Der service war entstanden zunächst in die 'YYY.ReportingService' - namespace. Es wurde zu einem anderen namespace sobald dieses problem begonnen. Ist jetzt in der 'MMM' - namespace.
Ich habe eine using-Direktive 'YYY.Service1'. Ich habe auch versucht aliasing der using-Direktive (mit test = YYY.Service1)
Stellen Sie sicher, dass etwas nicht Durcheinander mit meinem service und der namespaces, baute ich einen neuen service, mit einer einzigen Methode. Es nimmt einen string-parameter und liefert "Hallo" und beliebige Zeichenfolge übergeben wird. Der Service funktioniert auch in der WCF test client und die paar test-Projekte, die ich erstellt. Dieser service ist in der SimpleTestService namespace, BasicService-Klasse, mit einem methiod namens GetGreeting. Die Benennung wurde absichtlich getan, um jede mögliche Namenskonflikte. Tritt der Fehler weiterhin auf, mit diesem neuen service.
Irgendwelche Gedanken zu dieser? Danke!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Diese nahm man mich eine Weile. Stellte sich heraus, dass
"The type name 'AAA' does not exist in the type 'YYY.YYY' "
wurde verursacht durch die YYY.YYY - mein Konsum-Klasse-sharing-Namen mit der enthaltenden namespace.Lösung: benennen Sie die verbraucherklasse auf etwas, das nicht gleich der volle name des namespace, also
YYY.XXX
.Ich merke es und alte Frage, aber ich hatte gerade dieses problem und die Frage wurde ein namespace-Konflikt.
In meinem Fall AAA benannt wurde ServiceClient und generiert den gleichen Fehler, die Sie erlebt. Einmal habe ich entfernt den namespace-Konflikt (nannte es ConsoleClient statt) und alles funktionierte wie erwartet.
Habe ich ein anderes Problem. Stellen Sie sich zwei Projekte mit unterschiedlichen namespaces und folgenden Klassen
Projekt 1
Projekt 2
In diesem Fall erhalten Sie dieselbe Fehlermeldung wie oben. Dies wird hoffentlich jemand helfen.
Haben Sie eine alte version des service DLL in den GAC? Ihre Anwendung ist möglicherweise verweist Sie auf eine andere version der assembly damit die Typen fehlen.
Ich hoffe, Sie haben aktualisiert die service-Referenz ist, nachdem Sie den namespace der service. In der Regel erhalten Sie diese Fehlermeldung, wenn der client-side proxy wird nicht aktualisiert mit den neuesten Arten bilden die server. Sie können versuchen, die Aktualisierung der service-Referenz.