WCF gehostet in einer Web-Anwendung und Kompatibilität Modus

Habe ich einen WCF-Dienst gehostet wird, in einer web-Anwendung (IIS). Ich müssen zu aufzudecken 1 Endpunkt über wsHttp und die andere über netTcp. Ich bin auf einem IIS7-Umgebung, die es möglich macht, für mich hosten nicht-HTTP-basierte Dienste. Sowieso, wenn ich durchsuchen die .svc Datei mit einem browser, bekomme ich die Fehlermeldung:

Den service kann nicht aktiviert werden, weil es nicht unterstützt ASP.NET
die Kompatibilität. ASP.NET Kompatibilität aktiviert ist für diese Anwendung

Durch googeln erkannte ich, dass WCF läuft in zwei Modi Mixed und ASP.NET -kompatibel. Wenn ich das Attribut

[AspNetCompatibilityRequirements(
       RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)] 

Jedoch scheint es, dass, sobald ich weisen Sie dieses Attribut der Service-Vertrag-Umsetzung, die ich nicht verwenden können, eine nicht-HTTP-Bindung.

Wie kann ich es so einrichten dass:

  • Ich kann die Unterstützung von nicht-HTTP-Endpunkte
  • Ich kann als host für den service über eine Web-app
  • Ich nicht, erstellen Sie mehrere Dienste mit aspnet-Kompatibilität eingeschaltet und der andere ausgeschaltet
Sind Sie mit einem ASP.NET feature? Wenn ja, welche? Kann es entfernt werden?
Noch nicht so weit (Nicht sicher, Ob ich es verwenden würde-Sitzung oder Kontext in der Zukunft). Sind Sie sagen, dass, wenn ich nicht mit jedem asp.net feature, ich sollte in der Lage sein, schalten Sie das AspNetCompatibility und noch host in ein web-host?
warum nicht, setzen Sie den Dienst mit einem windows-Dienst? Ich denke, dass die erste und zweite sind völlig unmöglich, es sei denn, Sie verwenden WAR.
Ich Frage mich, wie Sie es in der StockTrader Beispiel-app. Ich glaube, dass Sie die Unterstützung von HTTP-und nonHTTP Bindungen für die gehosteten Dienste über eine Web-app (nicht WAR)
Ok, ich gehosteten WCF-Dienst auf Appfabric. Ich kann immer noch nicht schalten Sie das AspNetCompatibilityRequirements

InformationsquelleAutor DotnetDude | 2010-03-03

Schreibe einen Kommentar