Я пытаюсь разделить сеансы между двумя веб-приложениями, оба размещены на одном сервере. Одним из них является приложение веб-форм .net 2.0, а другим - приложение .net 3.5 MVC2.
Оба приложения настроены так:
<sessionState
mode="StateServer"
stateConnectionString="tcpip=127.0.0.1:42424"
/>
В приложении веб-формы я отправляю сеансовый ключ в приложение MVC:
protected void LinkButton1_Click(object sender, EventArgs e)
{
Session["myvariable"] = "dan";
string sessionKey = HttpContext.Current.Session.SessionID;
//Followed by some code that posts sessionKey to the other application
}
Затем я получаю его в приложении MVC и пытаюсь использовать тот же сеанс, как этот:
[HttpPost]
public void Recieve(string sessionKey )
{
var manager = new SessionIDManager();
bool redirected;
bool IsAdded;
manager.SaveSessionID(HttpContext.ApplicationInstance.Context, Id, out redirected, out IsAdded);
var myVar = Session["myvariable"];
}
Ключ публикуется, но сессия не загружается в приложение MVC, т. Е. SessionKey имеет значение null. Можно ли сделать то, что я пытаюсь сделать?