MSBUILD抱怨空条件运算符

时间:2018-06-22 06:33:22

标签: c# msbuild

我有一个MSBUILD项目,抱怨空条件语法。

BuildResult buildResult = BuildManager.DefaultBuildManager.Build(parameters, BuildRequest);

buildResult.ResulsByTarget

键:“构建”

值:ResultCode“失败”

我的日志告诉我有关此错误的信息:

Workflow\Activate.cs(283,52): error CS1525: Invalid expression term '.'

当我查看代码中的特定行时,它使用像这样的空条件运算符

Contract contract = Context?.Selected;

删除null条件并用null检查替换它可以解决此问题,但是我有很多使用null条件运算符的代码。而且我不想编辑其中的每一个。

if(Context != null)
    contract = Context.Selected;

更新1:

  1. 我确保ms build项目使用最新版本的c#

  2. 还要确保该项目正在尝试构建的具有相同的.net框架版本

更新2:

下载了vs 2017的msbuild工具,并从那里使用了dll。但是,发生了新错误The tools version "15.0" is unrecognized. Available tools versions are "12.0", "2.0", "3.5", "4.0".

0 个答案:

没有答案