2009-05-20 95 views
0

这是一个奇怪的问题,因为昨天我在Cassini(VS2008)中执行我的代码,并且在控制器的操作方法中Session对象有效并持有会话数据。今天我重新启动了VS2008并打开了项目,Session对象为空。ASP.NET MVC控制器中的会话对象为空

在ASP.NET MVC应用程序的Controller代码中Session对象可能为null的原因是什么?

回答

1

我发现了这个问题。

我正在使用LINQ从业务层检索IEnumerable,然后在视图中遍历它。问题在于LINQ是懒加载的,并没有尝试加载列表的内容(存储在Session对象中),直到它试图在View中迭代它。我通过使用.ToList()扩展方法在Controller中强制加载来解决此问题。

相关问题