C# 代码仅适用于断点
我在会话中存储来自数据库的值,如下所示:C# 代码仅适用于断点,c#,asp.net,C#,Asp.net,我在会话中存储来自数据库的值,如下所示: private List<Message> _AllMessages = null; public List<Message> AllMessages { get { _AllMessages = Session["AllMessages"] as List<Message>;
private List<Message> _AllMessages = null;
public List<Message> AllMessages
{
get
{
_AllMessages = Session["AllMessages"] as List<Message>;
if (_AllMessages==null)
{
Session["AllMessages"] = LoadMessages();
}
return _AllMessages;
}
set
{
Session["AllMessages"] = value;
}
}
AllMessages.Where(y => y.Created.Date == DateTime.Today).ToList();
我收到以下错误:
Value cannot be null.
但当我将断点放在
AllMessages.Where
行上时,它看起来像是将AllMessages计算为Null一秒钟,然后获取值,一切正常。为什么会发生这种情况?我认为您有错误,请尝试以下方法:
public List<Message> AllMessages
{
get
{
_AllMessages = Session["AllMessages"] as List<Message>;
if (_AllMessages==null)
{
Session["AllMessages"] = LoadMessages();
_AllMessages = Session["AllMessages"];
}
return _AllMessages;
}
set
{
Session["AllMessages"] = value;
}
}
public列出所有消息
{
收到
{
_AllMessages=会话[“AllMessages”]作为列表;
如果(_AllMessages==null)
{
会话[“AllMessages”]=LoadMessages();
_AllMessages=会话[“AllMessages”];
}
返回所有消息;
}
设置
{
会话[“所有消息”]=值;
}
}
邮件列表中是否有空条目?LoadMessages看起来像什么?