【发布时间】:2022-01-20 00:33:32
【问题描述】:
如何确定可以针对特定 .NET Framework 版本使用的 C# 版本?
我已阅读:
https://stackoverflow.com/a/247623/223742 https://docs.microsoft.com/en-us/dotnet/framework/migration-guide/versions-and-dependencies
但是,我无法确定可以使用哪个 C# 版本来对抗 .NET Framework 4.6.1。
【问题讨论】:
-
C# 版本与编译器有关,与 .NET Framework 无关。检查second answer 到您提到的问题。
-
@AhmedAbdelhameed 对,因此我可以使用 C# 8.0 对抗 .NET 4.61?如果我不能使用 8.0 中不受 4.61 支持的功能,VS 会抱怨编译错误,我是否更正?
-
有关基于框架的默认 C# 版本的信息,请参阅 this page
-
@TheEdge 我还没有尝试过 C# 8.0,但总的来说,是的,这是正确的。例如,C# 7.1 引入了
async Main。现在,如果您启动一个 .NET 2.0 项目并尝试使用async Main,您将无法编译该程序,因为缺少框架功能。 -
我不清楚为什么这个问题被搁置了,尤其是在“离题”的情况下。