Я использую Visual Studio 17 (версия 15.8.5), мои цели проекта. NET Framework 4.8, и я попытался установить версию C# для использования (через вкладку «Сборка» в окне «Свойства») C# 7.3 (это максимальная версия, которую можно выбрать из раскрывающегося списка). Однако создание проекта сообщает об ошибке, как в заголовке вопроса. Я даже пробовал 7.0
и C# latest minor version
, все они тоже сообщают об ошибке.
Похоже, среда поддерживает максимальную версию 6 (C# 6.0)?
I Я пробовал установить и Microsoft.Net.Compilers v3.6.0
, и Microsoft.Net.Compilers.Toolset v3.6.0
, но ничего не изменилось.
Я хотел бы использовать функцию сопоставления с образцом, как это делает следующий простой код:
object o ...
if(o is int c){
//do something with c (cast to int) ...
}
ОБНОВЛЕНИЕ :
Странно, что если я создаю совершенно новый проект ASP. NET MVC, он просто компилируется нормально с набором C# 7.3. Похоже, что-то не так с конкретным проектом c, над которым я работаю. Для лучшей диагностики я хотел бы поделиться этим проектом здесь по этой ссылке https://sites.google.com/site/ngaodaantoi/files/WebApiAuth.zip?attredirects=0&d=1
Рекомендуется иметь VS 2017, чтобы, возможно, воспроизвести проблему.