C# &引用;对象为空";表达式给出了一个错误

C# &引用;对象为空";表达式给出了一个错误,c#,visual-studio-2015,visual-studio-2017,c#-7.0,C#,Visual Studio 2015,Visual Studio 2017,C# 7.0,我有以下代码: public static class ItemsHelper { public static object product { get { return HttpContext.Current.Items["product"]; } set { HttpContext.Current.Items["product"] = value;

我有以下代码:

public static class ItemsHelper
{
    public static object product
    {
        get
        {
            return HttpContext.Current.Items["product"];
        }
        set
        {
            HttpContext.Current.Items["product"] = value;
        }
    }
}
然后,在函数中,我有以下表达式:

if (ItemsHelper.product is null) return false;
我在visual studio 2017中进行了测试,它工作正常,但我在运行visual studio 2015的两台不同的计算机上进行了测试,它检索到以下错误:

类型(预期)


有人知道为什么会发生这种情况吗?

为null
是C#7的一个特性。您需要一个与C#7兼容的编译器来编译代码


Visual Studio 2017附带兼容的版本,但对于Visual Studio 2015,您需要更新。检查这个问题,了解如何更新:.

为null
是一个C#7特性,当然在VS 2015中没有,为什么不写
ItemsHelper.product==null
?@Sentry我可以,但我试图理解为什么会发生这种情况详细的解释。
is
关键字不是C#7特性,只有
的新用法是
用于模式匹配。