这一行同样的代码在我的同事的PC上工作,但不是我的。我们都在使用VS 2017,无法弄清楚为什么这对我来说是错误的。
我已经阅读了这里的文档 https:/docs.microsoft.comen-usdotnetapisystem.io.streamreader?view=netcore-3.1。
我看到我需要使用'('和')',但我很困惑,为什么在我同事的电脑上可以工作。
这个项目的依赖性是
你的同事有一个最新的编译器。而你没有。这个("使用声明",即不使用parens和括号)是最近增加的内容之一--C# 8 IIRC。
区别是旧的。
using (var x = {init}) {
//...
}
与新的。
using var x = {init};
// ...
与 using
隐含的范围,一直持续到《公约》结束。含有 范围 做所以这种新的语法避免了缩进和大括号的扩散)。)
你应该可以通过安装最新的.NET Core SDK来更新你的编译器。