在我的VS.NET 2015开发机器上,使用 nameof operator的Razor View 工作得像灵符。

部署到Windows服务器时,它无法编译CSHTML Razor View :



在德国:



我已经安装了.NET Framework 4.6(“ASP.NET版本:4.6.81.0”),但没有成功。

很可能我缺少一些简单的东西。

不过,我还是很笨。它是web.config设置吗?或者是其他东西?

我的问题:

如何在CSHTML Razor View 中启用C#6功能(例如nameof运算符)?

最佳答案

确保在文件“web.config”中存在节点system.codedom

<system.codedom>
    <compilers>
      <compiler language="c#;cs;csharp" extension=".cs"
        type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
        warningLevel="4" compilerOptions="/langversion:6 /nowarn:1659;1699;1701"/>
      <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb"
        type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
        warningLevel="4" compilerOptions="/langversion:14 /nowarn:41008 /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+"/>
    </compilers>
 </system.codedom>

然后您将引用Microsoft.CodeDom.Providers.DotNetCompilerPlatform包。

关于c# - 在Razor View 中使用 “nameof”运算符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33822854/

10-17 02:10