Объект Session является нулевым в веб-приложении ASP.NET MVC 4 после развертывания в IIS 7 (W 2008 R2)

Я разработал веб-приложение ASP.NET MVC 4 (.net 4.5), которое отлично работает в Visual Studio 2012. После развертывания в IIS 7 в Windows Server 2008 R2 кажется, что объект HttpContext.Session внутри моего контроллера имеет значение null. Я создал простое тестовое приложение ASP.NET MVC 4, чтобы продемонстрировать проблему.

В моем тестовом приложении у меня есть простой Home Controller

public class HomeController : Controller
{
    public ActionResult Index()
    {
          if ( HttpContext != null && HttpContext.Session != null )
          {
              HttpContext.Session[ "test" ] = "a string in session state";
              ViewBag.Info = HttpContext.Session[ "test" ];
              return View();
          }
          else
          {
              if ( HttpContext == null )
              {
                  ViewBag.Info = "beeeeuuuuu - HttpContext = null!!!";
              }
              else if ( HttpContext.Session == null )
              {
                    ViewBag.Info = "beeeeuuuuu - Session = null!!!";
              }
              return View();
          }

    }
}

Мое представление Index.chtml выглядит примерно так:

@{
    ViewBag.Title = "Index";
}

Index
This is a simple test
<p>@ViewBag.Info</p>

Поэтому, когда я запускаю приложение, я получаю то, что ожидал:

Index
This is a simple test 
a string in session state

Но после того, как я развернул приложение на веб-сервере, веб-сайт дает мне следующую страницу, указывающую, что объект Session является нулевым:

Index
This is a simple test 
beeeeuuuuu - Session = null!!!

Веб-приложение развертывается на веб-сайте по умолчанию, который работает в пуле приложений ASP.NET v4.0 (интегрированный конвейер).

Я ужеустановил ASP.NET на сервер, используя aspnet_regiis -ir, но это неТ помочь. Состояние сеанса включено (в процессе) на сервере ISS. Я надеюсь, что кто-нибудь может помочь мне здесь, потому что яЯ пытаюсь решить это в течение достаточно долгого времени.

Большое спасибо заранее и всего наилучшего.

ОБНОВЛЕНИЕ: Я также протестировал сборку ASP.NET MVC 4 с .NET 4.0 вместо 4.5, и у него та же проблема. Я также развернул приложение ASP.NET Web Pages (.NET 4.0), и оно работает нормально (HttpContext.Current.Session не является нулевым в приведенном ниже коде).

ОБНОВЛЕНИЕ II: Я также попытался сохранить состояние сеанса в базе данных, которая отлично работала на моей машине для разработки, но имела ту же проблему на рабочем сервере (HttpContext.Session по-прежнему возвращает ноль).

Ответы на вопрос(1)

Ваш ответ на вопрос