2015-09-11 49 views
4

每标签,这是在Visual Studio 2015的ASP MVC项目代码在剃刀:收到VS 2015年将不会建立我的项目作为C#6.0

@if (Model.AdditionalContacts?.Count > 0) { } 

错误:

功能“零传播运算符'在C#5中不可用。请使用语言版本6或更高版本。

我正在使用VS 2015.为什么这不是默认的?采取

步骤来解决:

  • 打开项目的Properties
  • 点击Build
  • 点击Advanced
  • 设置Language VersionC# 6.0
  • 清洁/重建

发生相同的错误。为什么?

[编辑]:该代码直接在CS文件中正常工作。我甚至将语言切换回“默认”而不是C#6.0,它的工作原理。它只在CSHTML文件中不起作用。剃刀不支持这个吗?或者,这可能与IIS有关?

回答

6

C#6.0功能在MVC5项目(在剃刀)自动获得,你有两个选择:

  • 更新到MVC 6测试版
  • 安装了.NET编译器的CodeDOM提供商,see details here
+1

您应该更新答案,以澄清它是不能使用C#6功能的Razor *文件*。 C#6在MVC 5项目的其余部分工作得很好。此外,如果您发现重复问题,请投票结束当前重复问题。对相同问题的多个答案只会产生噪音,使得难以找到正确的答案。 –

相关问题