"Использование" синтаксиса без фигурных скобок работает на некоторых машинах, а не на других - почему? - PullRequest
0 голосов
/ 17 июня 2020

эта же строка кода работает с моими коллегами P C, но не с моими. Мы оба используем VS 2017 и не можем понять, почему для меня это ошибка.

enter image description here

Я прочитал здесь документацию https://docs.microsoft.com/en-us/dotnet/api/system.io.streamreader?view=netcore-3.1

и я вижу, что мне нужно использовать '(' и ')', но не понимаю, почему это работает на моих коллегах P C.

Зависимости для этого проект

rea

1 Ответ

4 голосов
/ 17 июня 2020

У вашего коллеги есть актуальный компилятор. Ты не делай. Это («использование деклараций», то есть без скобок и скобок) является одним из недавних дополнений - C# 8 IIR C.

Разница старая;

using (var x = {init}) {
  //...
}

по сравнению с новым:

using var x = {init};
// ...

с областью действия using, неявно продолжающейся до конца области , содержащей (а многие делают , поэтому этот новый синтаксис избегает увеличение количества отступов и фигурных скобок).

Вы сможете обновить свой компилятор, установив последнюю версию. NET Core SDK.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...