【问题标题】:A first chance exception of type 'Microsoft.CSharp.RuntimeBinder.RuntimeBinderException' occurred发生“Microsoft.CSharp.RuntimeBinder.RuntimeBinderException”类型的第一次机会异常
【发布时间】:2015-05-08 01:20:27
【问题描述】:

在 Newtonsoft JObjects 上使用动态时,我的调试输出中有很多 Microsoft.CSharp.RuntimeBinder.RuntimeBinderException。尽管异常必须被困在 Microsoft.CSharp.dll 中的某个地方,但它们正在发生让我隐约感到不舒服。我能做些什么来阻止它们(除了完全放弃动态)?

这是一个输出以下异常之一的简短测试程序:

    using System;
    using Newtonsoft.Json.Linq;

    namespace DynamicTest {
        class Program {
            static void Main(string[] args) {
                JObject j = new JObject();
                j["DocumentName"] = "Name";
                dynamic d = j;
                d.DocumentName = "Changed";
            }
        }
    }

【问题讨论】:

    标签: c# exception dynamic


    【解决方案1】:

    JSON.Net 的创建者本人解决了这个问题here

    确保它是次要的,例外是设计使然。关于 RuntimeBinderException 的更多信息已在StackOverflow

    上得到解答

    顺便说一句,如果你想禁用这些警告只是因为它们会让你感到不舒服。

    在 Visual Studio 中点击 Tools -> Options 然后选择 Debugging 并选中 Enable Just My Code

    【讨论】:

    • 谢谢你,我不会再担心了。我很惊讶 StackOverflow 没有在可能的答案列表中包含我之前对我的问题的答案。当我给出异常的全名时,也许我太具体了。
    猜你喜欢
    • 2013-06-21
    • 2014-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-25
    • 2010-12-30
    • 1970-01-01
    相关资源
    最近更新 更多