【问题标题】:VS2015 watch window does not accept the null-conditional syntaxVS2015监视窗口不接受空条件语法
【发布时间】:2018-01-22 15:24:25
【问题描述】:

请注意:

它既不能在即时窗口中工作,也不能在设置条件断点时工作。

谁能解释我做错了什么?

编辑 1

使用旧版 C# 和 VB 表达式求值器未选中。

但是,使用托管兼容模式被选中。但我记得打开它是为了解决 VS 2015 调试器中的错误。我需要更多时间来了解错误的详细信息。

编辑 2

在 VS 2015 中未选中 使用托管兼容模式 时,监视窗口功能失调。例如:

注意,这是 Debug 模式,而不是 Release。我记得在调试时检查状态有很多问题,并且普遍的建议是打开使用托管兼容模式

很遗憾,我无法迁移到 VS2017,因为我们的代码库仍有一些 Silverlight 代码。

当然,一旦我进入兼容模式,这种奇怪的行为就会消失。

【问题讨论】:

  • 它可能只是不支持它。很正常,即时窗口也不支持 LINQ
  • 你确定已经在 VS2015 中工作了吗?我不记得什么时候了,但是 MS 确实对 VS 的这一部分进行了大修以使这些东西正常工作,我不确定新版本是在 VS2015 还是 VS2017...
  • 我完全不确定它以前是否有效。我最近才开始使用这些 C# 6 好东西,我只是天真地假设它们在 IDE 中得到支持。
  • 我几乎 100% 确定 lambdas 也在监视窗口和 linq 中工作,仍在使用 VS2015。见this
  • @Liam LINQ 在 2015 年的 IW 中对我来说效果很好。在以前的版本中情况并非如此。

标签: c# visual-studio visual-studio-2015


【解决方案1】:

它应该可以工作 - 我刚刚在 VS 2015 (v14.0.25431.01 Update 3) 中尝试过,并且 null 条件语法在监视窗口中运行良好。

确保您没有选中“使用旧版 C# 和 VB 表达式评估器”配置设置(在选项 -> 调试下)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-04-23
    • 1970-01-01
    • 1970-01-01
    • 2017-01-18
    • 1970-01-01
    • 2016-09-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多