Freigeben des Sitzungsstatus zwischen 2 ASP.NET-Anwendungen mithilfe von SQL Server

Ich arbeite an einer Site, für die eine gemeinsame Sitzung zwischen einer CMS-Anwendung und einer Onlineshop-Anwendung auf derselben Domain erforderlich ist, z.

mydomain.com

und

store.mydomain.com

Ich habe einige Fortschritte gemacht und es funktioniert auf meinem lokalen Build zwischen

localhost/cms

und

localhost/store

Grundsätzlich habe ich getan, was in diesem Artikel vorgeschlagen wird

http://blogs.msdn.com/toddca/archive/2007/01/25/sharing-asp-net-session-state-across-applications.aspx

und hackte die gespeicherte Prozedur TempGetAppID, um dieselbe Anwendungs-ID (1) zurückzugeben. Dies scheint zu funktionieren, da Sitzungen mit IDs wie 'abv5d2urx1asscfwuzw3wp4500000001' erstellt werden, was ich erwarten würde.

Mein Problem ist, dass beim Bereitstellen in unserer Testumgebung eine neue Sitzung erstellt wird, wenn ich zwischen den beiden Standorten navigiere. Wenn ich also eine Sitzung auf der CMS-Site starte und zum Store navigiere, wird eine neue Sitzung erstellt. Diese sind in IIS7 als zwei verschiedene Websites eingerichtet.

In den web.config-Dateien für beide Sites sind die und -Elemente identisch und lauten wie folgt (minus vertrauliche Informationen)

Hat jemand eine Idee, warum dies möglicherweise nicht funktioniert? Ich teile die Formularauthentifizierung auf den beiden Websites und das funktioniert einwandfrei. Jede Hilfe oder Ideen wäre sehr dankbar!

Danke vielmals

Dave

Antworten auf die Frage(2)

Ihre Antwort auf die Frage