我正在开发一个.NET 4.5项目,它将运行在Windows7机器上;然而,我正在Windows10机器上开发它。
我有问题的是,空检查操作符?.只是在.NET 4.6中引入的(据我所知)。
即使我的项目是.NET 4.5,我仍然可以在代码中使用?.操作符,VS不返回错误。这里是我的意思的一个例子:
Pre?运算符代码:
var sAdditionalNode = xNodes.Current.SelectSingleNode("Details/SomeDetails", xNameSpace);
if (sAdditionalNode!=null)
{
var sAdditionalDetails = sAdditionalNode.Value;
}之后?操作符已经实现了。
var sAdditionalDetails = xNodes.Current.SelectSingleNode("Details/SomeDetails", xNameSpace)?.Value;当我相信,即使目前我在代码中使用?.操作符没有问题时,我是否正确;一旦我在Windows7下部署了我的项目(使用.NET 4.5),我会突然开始出现问题吗?
发布于 2016-01-31 12:54:29
Roslyn实际上可以为.net框架的旧版本编译代码。和猫王接线员在一起你应该很安全。只有在使用目标.net框架中的新类型时才会出现兼容性问题。
https://stackoverflow.com/questions/35113968
复制相似问题