Frage

sagen, ich habe eine einfache WCF-Anwendung, dass die Client-Anrufe, um eine Zahl zu erhalten. Es gibt nicht viel Verarbeitung in ihm und der Servicevertrag als Session = SessionMode.NotAllowed zugeschrieben wird.

Wenn der Konstruktor aufgerufen? Wenn das Objekt zerstört? Ist ein Konstruktor pro Anforderung genannt?

Gibt es Referenzdokumente oder Ressourcen, die diese Informationen? Ich kann nicht scheinen, um es zu finden.

War es hilfreich?

Lösung

WCF wird von IIS gehostet und unterliegt somit ihre Lebensdauerregeln. Eine Serviceklasse, von selbst, wird wahrscheinlich als notwendig in der App erstellt und zerstört werden; die Klasse bei Empfang einer Anfrage, die Methode aufgerufen, und das Ergebnis zurückgeführt, wonach der Gegenstand aufgebaut sein Umfang verlassen wird und entsorgt / fertiggestellt.

Doch das Projekt Ihres Service sieht aus wie ein gewöhnlicher ActiveServer.NET Web-App auf IIS enthält (überprüfen Sie die Datei Global.asax aus, die in es sein sollten, es enthält eine Klasse des Typs Httpapplication und stellt den Einstiegspunkt für die app, dass IIS kann es verwenden, um zu steuern) und IIS einen „Pool“ dieser Anwendungen Griff Anfragen von mehreren Clients beizubehalten. Solange Anfragen kommen immer in und IIS nicht entscheiden, eine App hat „abgestanden“ bekommen und erfrischt es oder der gesamte Pool, wird die Anwendung weiterhin ausgeführt. Also, keine statischen Klassen, die Sie erklären, zum Beispiel Ihrer Singletons IoC-Container, oder alles, was Sie zu einer abgeleiteten Klasse Httpapplication hinzufügen, dass Sie als Kind Typen verwenden, werden in Erinnerung bleiben, bis die App zurückgeführt wird.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top