1 回答
TA贡献1815条经验 获得超13个赞
正如您已经提到的,快速解决方法是使用包管理器 >>Tools
来运行Nuget Package Manager
Package Manager Console
Update-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 现在显示应有的样子:
作为挑衅,我什至尝试删除package
Visual Studio 解决方案的整个目录。
当我(重新)构建它时,它就会自动且默默地重新创建。
- 1 回答
- 0 关注
- 148 浏览
添加回答
举报