当前位置: 代码迷 >> ASP.NET >> 两个?问号 连在一起是什么意思?解决办法
  详细解决方案

两个?问号 连在一起是什么意思?解决办法

热度:3750   发布时间:2013-02-25 00:00:00.0
两个??问号 连在一起是什么意思?
C# code
string id = Request["id"] ?? string.Empty;



这里两个问号是什么意思呀。?

------解决方案--------------------------------------------------------
如果Request["id"] 不存在
string id = string.Empty;
------解决方案--------------------------------------------------------
?? 
判断??左边表达式是否为null,如是null则取右边表达式的值,否则就取左边表达式的值
------解决方案--------------------------------------------------------
The ?? operator returns the left-hand operand if it is not null, or else it returns the right operand.

C# code
// nullable_type_operator.csusing System;class MainClass{    static int? GetNullableInt()    {        return null;    }    static string GetStringValue()    {        return null;    }    static void Main()    {        // ?? operator example.        int? x = null;        // y = x, unless x is null, in which case y = -1.        int y = x ?? -1;        // Assign i to return value of method, unless        // return value is null, in which case assign        // default value of int to i.        int i = GetNullableInt() ?? default(int);        string s = GetStringValue();        // ?? also works with reference types.         // Display contents of s, unless s is null,         // in which case display "Unspecified".        Console.WriteLine(s ?? "Unspecified");    }}
  相关解决方案