以下のように変数を割り当てることができます。
if (Session["myVariable"] != null)
{
string variAble = Session["myVariable"].ToString();
}
オブジェクトが null かどうかをチェックし、null でない場合は代入するメソッドはありますか?
string variAble = Session["myVariable"] ?? "";
編集@hatchet によって提案されているように、もう少し堅牢な形式は次のとおりです。
string variAble = (Session["myVariable"] ?? "").ToString();
これは新しいことではありませんが、条件演算子を使用してこれを単純化できる可能性があります。
string variable = Session["myVariable"] != null ? Session["myVariable"].ToString() : "Fallback";
null オブジェクトでも機能するため、拡張メソッドを作成できます。
public static class StringExtensions
{
public static String ToNullString(this object o)
{
return o == null ? "" : o.ToString();
}
}
しかし、私はそれを悪い形だと考えています - あなたの後にコードをサポートする人は誰でも、あるいは数ヶ月後にあなたにとっても混乱するでしょう. nullチェックだけを行う方がおそらく良いでしょう。