2011-12-09 8 views

答えて

2

A = B? C

A = C B == NULL

A = BであればBがNULLでない場合

以下

CompanyProductSeriesIdプロパティのゲッター、 のsraightforward実装です私は自己説明であると考えている。

string returnValue; 

if (Request.QueryString["CPGId"] != null) 
{ 
    returnValue = Request.QueryString["CPGId"]; 
} 
else 
{ 
    if (ViewState["CPSId"] == null) 
    { 
     returnValue = ""; 
    } 
    else 
    { 
     returnValue = ViewState["CPGId"].ToString()); 
    } 
} 

return returnValue; 
1

?? 「??オペレータがヌル合体演算子と呼ばれ、null許容値型または参照型のデフォルト値を定義 ために使用される

は左を返し - MSDNから、ヌル合体演算子と呼ばれます。オペランドがnullでない場合は-handオペランド、そうでない場合は は右オペランドを返します。

これは役に立ちますか?

0

この場合、Request.QueryString["CPGId"]が返されます。ヌルの場合は(ViewState["CPSId"] == null ? "" : ViewState["CPGId"].ToString())が返されます。

0

??オペレータは、int、DateTimeなどのNullableデータ型でのみ機能しますか?など

例:

int? a = 5; 
int b = a ?? 0; // out put will be 5 

int? c = null; 
int d = c ?? 0; // output will be 0; 
関連する問題