萧十郎
正如您已经提到的,快速解决方法是使用包管理器 >>Tools来运行Nuget Package ManagerPackage Manager ConsoleUpdate-Package Microsoft.CodeDom.Providers.DotNetCompilerPlatform -r但另一种解决方案(我认为更可靠)是删除项目Web.config文件的属性。(Web.config与您的文件位于同一目录中.csproj。)Web.config在文本编辑器(或 Visual Studio 中)中打开文件。- 在标签中configuration | system.codedom | compilers | compiler language="c#;cs;csharp",完全删除该type属性。<?xml version="1.0" encoding="utf-8"?><configuration> <!-- ... --> <system.codedom> <compilers> <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.5.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /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.5.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:41008 /define:_MYTYPE=\"Web\" /optionInfer+"/> </compilers> </system.codedom></configuration>简而言之,删除以 开头的行type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft。(据推测,相同的修复方法适用于 Visual Basic 和 Csharp,但我还没有尝试过。)Visual Studio 将处理剩下的事情。不再Server Error in '/' Application。在我在上面的 zip 文件中提供的示例代码中,HTTP Error 403 当您点击Ctrl+时,您将得到F5。尝试http://localhost:64195在您的网络浏览器中替换为http://localhost:64195/api/products.Web API 现在显示应有的样子:作为挑衅,我什至尝试删除packageVisual Studio 解决方案的整个目录。当我(重新)构建它时,它就会自动且默默地重新创建。