Microsoft.Net.Compilers 部署时出现包错误

Microsoft.Net.Compilers Package Error When Deployed

我有一个 C# MVC 项目,我曾经在我的项目中安装了 Microsoft.Net.Compilers 的 1.0.0.0 版本。但我最近将它更新到最新版本 2.6.1.0,因为我需要它来执行一些更新的代码。

当我将新代码部署到服务器时出现问题。我收到这个奇怪的无用错误:

如果我从我的 web.config 中删除以下代码,网站将加载,但一些包含我必须更新编译器的新代码的页面将会失败。

  <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>

我在 web.config 中删除该部分时得到的错误示例如下:

执行新操作时出现意外字符“$”string.format

$"Hello {Model.WorldText}";

有谁知道如何解决这个错误?

谢谢。

我检查了服务器上的事件记录器,它报告了一个错误,指出我的应用程序中使用的功能需要在服务器上安装 .NET 4.6。

我不得不进行一些 windows 更新,因为 .NET 4.6 更新中存在阻止程序。一旦完成,我就可以安装 .NET 4.6 并且该站点再次运行得很好。