Как я могу проверить, существует ли сеанс или с пустым значением или 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();
}