Я не уверен, поможет ли это вам решить проблему, но вы можете попробовать этот фрагмент кода в событии Session_End ... Предполагая, что это событие запущено из процесса выхода из системы ..
Это последнее из событий, где доступна переменная сеанса.
protected void Session_End(object sender, EventArgs e)
{
string strMessage = string.Empty;
for (int i = 0; i < this.Session.Count; i++)
{
strMessage += string.Format("Session of {0} Value is {1}", i.ToString(), this.Session[i].ToString());
strMessage += "/n";
}
}
this.Session.Count должен указать количество сеансов на сервере для приложения. Это решение может работать, только если ваше приложение размещено на одном веб-сервере, а не на ферме веб-серверов. Я не знаю, как сеансы обрабатываются в ферме веб-серверов.