Visual Studio2017中编写ASP.NET程序时使用C# 7.0元组Tuple新特性的一点注意事项

使用Visual Studio2017编写一个ASP.NET MVC应用,想用用C#7.0元祖Tuple的新特性。于是,在包管理器NuGet中下载安装了System.ValueTuple 4.3.1版,然后编写如下示例代码,但编译时报错误,即编译器不认识新特性的语法。

private (string A, string B) Open()
{
    return (null, null);
}

于是,在控制台和窗体应用程序中编写上述代码(注意,此时仅仅需要引用System.ValueTuple.dll动态库即可),编译正常。由于ASP.NET或ASP.NET MVC有个packages文件加,第三方包都在该文件夹中,估计编译器或其配置与该包有关。

查遍了项目文件也没有发现啥问题,于是网查了一些资料,测试了多种办法,最后的解决方法是:升级Microsoft.NET.Compilers包到最新版才行,即从1.3.2版升级到2.2.0版。

笔者的编程环境为:Windows10、Visual Studio Community 2017 update1、.NET 4.5。


猜你喜欢

转载自blog.csdn.net/hulihui/article/details/74906216