【发布时间】:2020-03-17 00:47:00
【问题描述】:
【问题讨论】:
-
我希望你刚才的话不准确。 C# 版本和。 NET 版本几乎彼此独立:我可以用 .NET3.5 编译用 C#7.2 编写的代码,用 .NET4.7.2 编译用 C#3 编写的代码。您可以做什么主要取决于 Visual Studio 版本(因此:编译器)。
标签: c# .net-core version c#-7.0 .net-core-2.0
【问题讨论】:
标签: c# .net-core version c#-7.0 .net-core-2.0
.NET Core 2.0 referencesRoslyn 2.3,对应Visual Studio 2017 15.3版本,支持C# 7.1。
【讨论】:
dotnet exec "c:\Program Files\dotnet\sdk\2.2.0-preview1-007622\Roslyn\bincore\csc.dll" -langversion:?。这可能是一个值得的 cli 问题/请求。
C#what's new version history page 给出了所有版本的列表以及它们相关的 Visual Studio 和 .NET 核心版本:
- C# 7.3 Visual Studio 2017 版本 15.7,在 .NET Core 2.1 SDK 2.1.300 RC1 中
- C# 7.2 Visual Studio 2017 版本 15.5,在 .NET Core 2.0 SDK 中。
- C# 7.1 Visual Studio 2017 版本 15.3 和 .NET Core 2.0 SDK。
- C# 7.0 Visual Studio 2017 和 .NET Core 1.0 及更高版本
C# 8.0 目前仍处于预览阶段(2019 年 7 月 3 日)。
您还可以使用以下命令查看您的 SDK 版本:
dotnet --info
样本输出:
.NET Core SDK (reflecting any global.json):
Version: 2.1.300
Commit: adab45bf0c
Runtime Environment:
OS Name: Mac OS X
OS Version: 10.13
OS Platform: Darwin
RID: osx.10.13-x64
Base Path: /usr/local/share/dotnet/sdk/2.1.300/
Host (useful for support):
Version: 2.1.0
Commit: caa7b7e2ba
.NET Core SDKs installed:
2.1.300 [/usr/local/share/dotnet/sdk]
.NET Core runtimes installed:
Microsoft.AspNetCore.All 2.1.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.1.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.1.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
【讨论】:
来自 Microsoft .net 核心what's new page:
NET Core 2.0 支持 C# 7.1,它增加了许多新功能,包括:
- 可以使用 async 关键字标记 Main 方法,即应用程序入口点。
- 推断的元组名称。
- 默认表达式。
您也可以查看C# Language versioning page
编译器根据这些规则确定默认值:
.NET Core 2.x C# 7.3
【讨论】: