在尝试运行简单的Web表单时,我在mac VS 7.4.3上连续出现此错误。
CSC : error CS1902: Invalid option 'portable' for /debug; must be full or pdbonly
我尝试用以下方法手动更新.csproj文件:
<DebugType>portable</DebugType>
但没有任何帮助;我理解它来自于基于窗口的/基于微软的软件包;但不知道如何修复与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.
我还评论了所有便携式&#39;在上面的文件..?
答案 0 :(得分:2)
对于最近遇到这个问题的任何人-我只是在使用jetbrains rider 2020.1 / VS 2019时就遇到了这个问题(我在rider中从事大多数开发工作,但将在VS中执行某些数据库任务和某些Web部署)。
问题是我的一个项目(我新添加到解决方案中的一个项目)由于某种原因而具有一些不正确的属性设置。我在Jet Brains Rider中解决了这个问题...但是我也会分享在VS 2019中解决问题的方法。在我的情况下,解决方案是:
JET BRAINS RIDER 2020.1
Visual Studio 2019
如果这不能解决您的问题,请重新阅读错误消息并尝试推断出问题出自哪个项目/哪个配置,然后尝试在那里重新配置生成选项。
答案 1 :(得分:1)
我认为这与使用过时的编译器(又名: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"
因此,将调用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"
Bam,出现编译错误:
“ / debug的选项'portable'无效;必须为完整或pdbonly”
所以对我而言,结论是MSBuild / 15.0使用新的调试选项,而MSBuild / 14.0不能使用。
答案 2 :(得分:0)
答案 3 :(得分:0)
写这个是因为我还没有看到像我这样的答案,希望有人会觉得这有帮助:
在尝试查找 ApplicationUser 类的引用时安装 Fluent.Infrastructure(版本“2.0.0-beta-01”)时遇到相同的错误 - 在我将其从项目并遵循此解决方案:https://stackoverflow.com/a/34178606