WCF-Endpoint-Konfigurations-Fehler: Der 'Vertrag' - Attribut ist ungültig?

Ich habe einen WCF-service nennen wir es UserService. Die UserService hat einen Verweis auf eine Bibliothek-Klasse. Nennen wir es DoWork.dll. Die DoWork.dll hat ein WCF-Dienstverweis auf einen anderen service, wir rufen Sie CompanyService.

Nun, wenn ich zuerst versucht, den Aufruf der UserService ich würde einen Endpunkt nicht konfiguriert Fehlermeldung. Nach der Lektüre rund um das web habe ich gefunden, dass ich brauchen, um hinzuzufügen, die CompanyService Bindungen und client-Informationen in die UserService's web.config unter der <system.serviceModel> Knoten.

Hier ist es:

<system.serviceModel>
    <bindings>
      <basicHttpBinding>
        <binding name="BasicHttpBinding_IComapnyService" />
      </basicHttpBinding>
    </bindings>
    <client>
      <endpoint name="BasicHttpBinding_ICompanyService"
          address="http://it-dev.company.local:81/Project/Copmpany/CompanyService.svc"
          binding="basicHttpBinding" 
          bindingConfiguration="BasicHttpBinding_IComapnyService"
          contract="CompanyService.ICompanyService"  />
    </client>

Das problem, das ich habe, ist die contract="CompanyService.ICompanyService" zeigt mir die Fehlermeldung:

Den 'Vertrag' - Attribut ist ungültig - Der Wert 'CompanyService.ICompanyService' ist ungültig gemäß seinem Datentyp 'clientContractType' - Die Enumeration-Einschränkung ist fehlgeschlagen.

Nun, wenn ich die CompanyService beziehen sich direkt auf die UserService WCF-Projekt, der Fehler geht Weg (offensichtlich). Aber ich sollte nicht haben, dies zu tun. Ich habe versucht, voll qualifizierten namespace der ICompanyService Vertrag und das funktioniert auch nicht. Die ich gelöscht habe .suo-Datei und erstellen Sie das Projekt neu und das funktioniert auch nicht (schlug an anderer Stelle im web). Auch, wenn ich geben contract= bekomme ich das drop-down-Liste, aber CompanyService.ICompanyService ist nirgends zu finden (nur wenn ich mich auf den service direkt in die UserService Projekt).

Ich habe versucht, konfigurieren Sie es mit Tools > WCF Service Configuration Editor und das hilft nicht.

Ich sollte anmerken, dass alles scheint zu funktionieren, aber ich weiß nicht, wie die Tatsache, dass intellisense ist mir das blau squiggly underline und Fehlermeldung. Ich habe das Gefühl, ich brauche etwas anderes in der web.config zu bekommen dies funktioniert, da die UserService verweist auf die DoWork.dll, die wiederum verweist auf die CompanyService dessen Vertrag ich nicht richtig sehen.

Alle Vorschläge werden sehr geschätzt. Vielen Dank im Voraus.

  • Ich stieß auf dieses vor kurzem und gefunden, dass tatsächlich die vollen namespace wurde ein Beitrag zu meinen Themen. Nützlicher Hinweis für alle anderen mit diesem problem.
InformationsquelleAutor BBauer42 | 2013-08-16
Schreibe einen Kommentar