我可以将 C# 7.3 与 .Net Framework 4.6.1 一起使用吗?
Posted
技术标签:
【中文标题】我可以将 C# 7.3 与 .Net Framework 4.6.1 一起使用吗?【英文标题】:Can I use C# 7.3 with .Net Framework 4.6.1? 【发布时间】:2018-09-20 08:39:33 【问题描述】:我对 enum
通用约束感兴趣,但是当我在 Build → Advanced 上切换项目的语言版本时,我仍然收到错误 «在 C# 中不可用5个;即使在重新打开项目后,请使用 7.3 或更高版本的语言»。
项目类型是 ASP.NET MVC 应用程序。
【问题讨论】:
答案是肯定的,但是你的编译器版本必须支持c#7。您使用的是什么编译器版本/vs 版本? 这取决于您的 C# 编译器版本,而不是您的 .NET 版本 如何找到当前编译器的版本并安装需要的? 安装了 Compilers 和 CodeDom.DotNetPlatform,然后在 web.config 中将system.codedom → compilers → compiler language="c#;cs;csharp"
属性 langversion
更改为 7.3
并且一切正常。
@TrolltheLegacy 请将其发布为您自己问题的答案。
【参考方案1】:
我已经从 Nuget 安装了 Microsoft.Net.Compilers
和 Microsoft.CodeDom.Providers.DotNetCompilerPlatform
包,然后在 web.config 中将 system.codedom → compilers → compiler language="c#;cs;csharp"
属性 langversion
更改为 7.3
,重新加载项目并且一切正常。
【讨论】:
不适合我,已经将Microsoft.Net.Compilers
和Microsoft.CodeDom.Providers.DotNetCompilerPlatform
更新到了最新版本v3.6.0
。 langversion
已正确设置为 7.3
,但仍无法构建项目。以上是关于我可以将 C# 7.3 与 .Net Framework 4.6.1 一起使用吗?的主要内容,如果未能解决你的问题,请参考以下文章
哪个 C# 编译器版本可以使用 CSharpCodeProvider 类编译 C# 7.3?