Как я могу проверить, существует ли сеанс или с пустым значением или null в .net С#

Кто-нибудь знает, как я могу проверить, является ли сеанс пустым или нулевым в веб-приложениях .net С#?

Пример:

У меня есть следующий код:

 ixCardType.SelectedValue = Session["ixCardType"].ToString();

Он всегда отображает ошибку для сеанса [ "ixCardType" ] (сообщение об ошибке: ссылка на объект не установлена ​​в экземпляр объекта). В любом случае я могу проверить сеанс перед тем, как перейти к .ToString()??

Ответ 1

Что-то простое, как "if" должно работать.

 if(Session["ixCardType"] != null)    
     ixCardType.SelectedValue = Session["ixCardType"].ToString();

Или что-то вроде этого, если вы хотите пустую строку, когда значение сеанса равно null:

ixCardType.SelectedValue = Session["ixCardType"] == null? "" : Session["ixCardType"].ToString();

Ответ 2

Передайте object с помощью оператора as, который возвращает null, если значение не может быть присвоено желаемому типу class или самому null.

string value = Session["ixCardType"] as string;

if (String.IsNullOrEmpty(value))
{
    // null or empty
}

Ответ 3

Вы можете назначить результат переменной и проверить ее на null/empty до вызова ToString():

var cardType = Session["ixCardType"];
if (cardType != null)
{
    ixCardType.SelectedValue = cardType.ToString();
}