一尘不染

C#6.0功能不适用于Visual Studio 2015

c#

我正在使用C#6.0测试Visual Studio 2015,但语言功能无法正常工作。在MVC Web应用程序中,将编译以下代码:

if (!string.IsNullOrWhiteSpace(Model.Profile?.TypeName))
{
    // More logic here...
}

但是,当我通过Debug和IIS Express运行应用程序时,出现以下错误:

CS1525:无效的表达式术语“。”

如何启用这些功能?


阅读 275

收藏
2020-05-19

共1个答案

一尘不染

这在MVC 5(已测试5.2.3)中有效,您只需要添加roslyn代码dom Nuget包

.NET编译器的CodeDOM提供程序…

使用新的.NET编译器平台(“
Roslyn”)编译器作为服务API的替换CodeDOM提供程序。这为使用CodeDOM的系统中的新语言功能(例如ASP.NET运行时编译)提供了支持,并提高了这些系统的编译性能。

PM> Install-Package Microsoft.CodeDom.Providers.DotNetCompilerPlatform

https://www.nuget.org/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform/

2020-05-19