2009-05-20 37 views
0

Das ist ein seltsames Problem, weil ich gestern meinen Code in Cassini (VS2008) ausführte und in der Aktionsmethode des Controllers das Sitzungsobjekt gültig war und Sitzungsdaten enthielt. Heute habe ich VS2008 neu gestartet und das Projekt geöffnet und das Session-Objekt ist null.Sitzungsobjekt ist null in ASP.NET MVC-Controller

Aus welchen Gründen kann das Session-Objekt im Controller-Code in einer ASP.NET MVC-Anwendung null sein?

Antwort

1

Ich entdeckte das Problem.

Ich verwendete LINQ, um IEnumerable aus der Business-Schicht abzurufen und dann in der Ansicht darüber zu iterieren. Problem war, dass LINQ lazy-loading war und nicht versuchte, den Inhalt der Liste (die in einem Session-Objekt gespeichert ist) zu laden, bis er versucht, in der View darüber zu iterieren. Ich löste das, indem ich die .ToList() - Erweiterungsmethode verwendete, um eine Last in dem Controller zu erzwingen.

Verwandte Themen