http://www.piipi.cn/view/294/1.aspx
第四个
4. 安全的null延迟赋值操作符
我很想看到一种安全地访问一个值为null的对象的属性的表达式,表达式可能形如Object.Property.Property.Value
比如我要访问Customer?.FirstName,但是Customer是null,此时Customer?.FirstName会返回null而不是抛出个NullReferenceException
再看看下面的代码,你就会知道怎么用了:
1、//如果不是客户或命令无效,这将抛出一个像往常一样空引用异常   
2、int orderNumber = Customer.Order.OrderNumber;     
3、//这将无法编译,因为它需要一个空的返回类型    
4、int orderNumber = Customer.Order?.OrderNumber;  
5、//这将返回null,如果客户是空或者如果命令是空  
6、int? orderNumber = Customer?.Order?.OrderNumber;
------------
然后我做例子
namespace WebApplication1
{
    public partial class SiteMaster: System.Web.UI.MasterPage
    {
        protected void Page_Load(object sender,EventArgs e)
        {
            Employee my = null;
            string name = my?.Name;   //但这里出现语法错误,当然生成也无法通过
        }
    }
    public class Employee
    {
        public string Name{get;set;}
    }
}这是怎么回事,
谢谢