我在构建 .NET Core MVC 应用程序时遇到以下错误。
Projects/MVCCoreTest/MVCCoreTest/CSC: Error CS1902: Invalid debug option `portable'. Valid options are `full' or `pdbonly' (CS1902) (MVCCoreTest)
这是什么意思以及我在哪里设置这些有效选项?
最佳答案
我应该澄清一下,如果您使用 VS for Mac 创建项目,则不应该遇到此问题,但如果您克隆它并在 Windows 中创建,则可能会遇到此问题。
我通过删除与 Roslyn 编译器相关的 Nuget 包解决了该错误:
<package id="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" version="1.0.0" targetFramework="net452" />
<package id="Microsoft.Net.Compilers" version="1.0.0" targetFramework="net452" developmentDependency="true" />
这样 Mono 编译器就会发生。这就是csc编译器优于mcs的原因
另外,不要忘记从 csproj 中删除这些行:
<Error Condition="!Exists('..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props'))" />
<Error Condition="!Exists('..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props'))" />
希望这有帮助,
问候。
关于macos - 无效的调试选项生成错误 Visual Studio for MAC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43155991/