有谁知道如何在.net c#web-applications中检查会话是空还是空?
示例:
我有以下代码:
ixCardType.SelectedValue = Session["ixCardType"].ToString();
它始终显示Session [“ixCardType”]的错误(错误消息:对象引用未设置为对象的实例)。无论如何,我可以在转到.ToString()??
之前检查会话答案 0 :(得分:21)
像“if”这样简单的东西应该有效。
if(Session["ixCardType"] != null)
ixCardType.SelectedValue = Session["ixCardType"].ToString();
如果你想在会话值为null时想要空字符串,那么就是这样:
ixCardType.SelectedValue = Session["ixCardType"] == null? "" : Session["ixCardType"].ToString();
答案 1 :(得分:14)
使用object
运算符投放as
,如果值无法转换为所需的null
类型,则返回class
,或者null
本身。
string value = Session["ixCardType"] as string;
if (String.IsNullOrEmpty(value))
{
// null or empty
}
答案 2 :(得分:1)
您可以将结果分配给变量,并在调用ToString()之前测试它为null / empty:
var cardType = Session["ixCardType"];
if (cardType != null)
{
ixCardType.SelectedValue = cardType.ToString();
}