Frage

Ich versuche, einen WCF-Service zu erstellen, der mit JSON-P funktioniert (langstöckige Kurzfilme, wir müssen den Web-Service-Cross-Domain anrufen und einen Rückruf erhalten, also muss ich ihn mit JSON-P arbeiten ).

Ich fand eine Code-Stichprobe auf MSDN (http://msdn.microsoft.com/en-us/library/cc716898.aspx). Wenn ich die ZIP -Datei extrahiere und zu Proben wcfwfcardspace wcf Extensibilität ajax jsonp cs navigiere, erhalte ich ein Projekt, in dem bestimmte Bindungen und Erweiterungen erstellt wurden, die WCF die Fähigkeit geben würden, einen Aufruf an einen Aufruf an einen Anruf zu spucken. JS -Funktion, nachdem es den JSON zurückgegeben hat.

Wenn ich versuche, diesen Code zu kopieren und in meinem Projekt zu implementieren, funktioniert er leider nicht.

Ich bekomme den folgenden Fehler:

Konfigurationsbindungsverlängerung 'System.Servicemodel/Bindings/JSONPBINDING' konnte nicht gefunden werden. Stellen Sie sicher, dass diese Bindungsverlängerung in System ordnungsgemäß registriert ist. Servicemodel/Erweiterungen/Binding -EXTERSIONS und dass sie korrekt geschrieben ist.

Es ist, als ob die Entwickler von Microsoft ein wichtiges Stück Code ausgelassen hätten, das für dies funktioniert, und ich bin mir nicht sicher, was sie ausgelassen haben oder was er tun soll.

Hat jemand Erfahrung mit WCF mit JSON-P gemacht?

Wenn es eine Möglichkeit gibt, dieses Beispielprojekt zum Laufen zu bringen, bin ich All-Ears.

Wenn es eine alternative Möglichkeit gibt, Cross-Domain-Web-Service-Anrufe von JavaScript zu WCF durchzuführen, bin ich auch interessiert.

War es hilfreich?

Lösung

Können Sie Ihre Web.config -Datei in Ihre Frage einbeziehen?

Die von Ihnen empfangene Nachricht ist entweder auf ein nicht existierendes oder ungültiges Erweiterungselement in Ihrem Web.config zurückzuführen.

Überprüfen Sie Folgendes

<system.serviceModel>
  <!-- client, behavior, and bindings -->   
  <extensions>
    <bindingElementExtensions>
      <add name="jsonpMessageEncoding"
           type="Namespace, Assembly, Version=X.X.X.X, Culture=neutral, PublicKeyToken=null"/>
    </bindingElementExtensions>
  </extensions>    
</system.serviceModel>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top