Cap*_*Ron 5 mono visual-studio-macros visual-studio-2017 visual-studio-mac
当尝试运行简单的 Web 表单时,我在 mac VS 7.4.3 上不断收到此错误。
CSC : error CS1902: Invalid option 'portable' for /debug; must be full or pdbonly
Run Code Online (Sandbox Code Playgroud)
我尝试使用以下命令手动更新 .csproj 文件:
<DebugType>portable</DebugType>
Run Code Online (Sandbox Code Playgroud)
但没有任何帮助;据我了解,它来自基于 Windows/Microsoft 的软件包;但不知道如何修复以在 mac 上运行。
/Library/Frameworks/Mono.framework/Versions/5.8.1/lib/mono/msbuild/15.0/bin/Microsoft.Common.CurrentVersion.targets(2057,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "System.Web.Entity". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors.
Run Code Online (Sandbox Code Playgroud)
我还注释掉了上面文件中“便携式”的所有实例..?
对于最近遇到这个问题的人来说——我刚刚在使用 jetbrains rider 2020.1 / VS 2019 时遇到了这个问题(我在 rider 中进行大部分开发,但会在 VS 中执行某些数据库任务和一些 Web 部署)。
问题是我的一个项目(我新添加到解决方案中的项目)出于某种原因有一些不正确的属性设置。我在 Jet Brains Rider 中解决了这个问题...但我也会分享如何在 VS 2019 中解决它。我的案例的解决方案是:
喷射大脑骑士 2020.1
视觉工作室 2019
如果这不能解决您的问题,请重新阅读错误消息并尝试推断问题源自哪个项目/哪个配置,并尝试重新配置那里的构建选项。
我相信这与使用过时的编译器(又名:MSBuild.exe)进行编译有关。
对于我的设置,我有一个包含一行的 build.bat 文件:
"c:/Program Files (x86)/Microsoft Visual Studio/2017/Community/MSBuild/15.0/Bin/MSBuild.exe" "<path/to/project/file>.csproj" /t:Build /p:Configuration=Debug /p:Platform="AnyCPU"
Run Code Online (Sandbox Code Playgroud)
因此,调用 MSBuild.exe 并将基于 .csproj 的项目编译为 exe。
如果我不使用 Visual Studio 社区的编译器,而是尝试使用另一个编译器:
"c:/Program Files (x86)/MSBuild/14.0/Bin/MSBuild.exe" "<path/to/project/file>.csproj" /t:Build /p:Configuration=Debug /p:Platform="AnyCPU"
Run Code Online (Sandbox Code Playgroud)
Bam,我得到编译错误:
“/debug 的‘portable’选项无效;必须为 full 或 pdbonly”
所以我的结论是 MSBuild/15.0 使用新的调试选项,而 MSBuild/14.0 则不行。