【问题标题】:RuntimeBinderException when using dynamic object even though Just My Code checked使用动态对象时出现 RuntimeBinderException,即使选中了“仅我的代码”
【发布时间】:2018-04-19 01:55:21
【问题描述】:

我有一些非常简单的代码会抛出 RuntimeBinderException

var mockString = "{ Status: \"Aware\" }";
dynamic d = JsonConvert.DeserializeObject(mockString);
OutputString = d.Status;

我已经阅读了很多类似的问题like this one,给出的答案是这是第一次机会异常,我应该在工具 > 选项 > 调试中检查“只是我的代码”。

我有两种解决方案的代码。一种有效,一种无效。两者都选中了“仅我的代码”选项。两者都使用相同版本的 Newtonsoft.Json (8.0.3)

这是 VS 2015,在 Android 上运行的 Xamarin Forms。

【问题讨论】:

    标签: dynamic xamarin.forms json.net


    【解决方案1】:

    在我的情况下,调试器在 RuntimeBinderException 的第一次机会异常中中断,但在 Android 上运行时,它在调试器中显示为“未处理”异常。

    这让我一时迷惑不解,但在我发现我可以毫无问题地继续跑步后,我意识到这实际上是第一次机会例外。在打开 for RuntimeBinderException 的第一次机会异常(因为我当时对这些异常不感兴趣)后,它按预期工作。

    要打开/关闭第一次机会异常的中断,请检查菜单:调试 -> Windows -> 异常设置

    【讨论】:

      猜你喜欢
      • 2013-02-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-05
      • 2011-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多