有人知道如何在.NET C# Web应用程序中检查会话是否为空或null吗?
例如:
我有以下代码:
ixCardType.SelectedValue = Session["ixCardType"].ToString();
在我的代码中,Session["ixCardType"] 总是显示错误(错误消息:对象引用未设置为对象的实例)。是否有任何方式可以在执行 .ToString() 之前检查会话状态?
有人知道如何在.NET C# Web应用程序中检查会话是否为空或null吗?
例如:
我有以下代码:
ixCardType.SelectedValue = Session["ixCardType"].ToString();
在我的代码中,Session["ixCardType"] 总是显示错误(错误消息:对象引用未设置为对象的实例)。是否有任何方式可以在执行 .ToString() 之前检查会话状态?
像 'if' 这样简单的语句应该可以工作。
if(Session["ixCardType"] != null)
ixCardType.SelectedValue = Session["ixCardType"].ToString();
如果您希望在会话值为null时返回空字符串,可以使用以下内容:
ixCardType.SelectedValue = Session["ixCardType"] == null? "" : Session["ixCardType"].ToString();
使用as
运算符将object
转换为所需的class
类型,如果值无法转换或者本身为null
,则返回null
。
string value = Session["ixCardType"] as string;
if (String.IsNullOrEmpty(value))
{
// null or empty
}
您可以将结果分配给一个变量,并在调用ToString()之前测试它是否为null/empty:
var cardType = Session["ixCardType"];
if (cardType != null)
{
ixCardType.SelectedValue = cardType.ToString();
}