【发布时间】: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";
}
}
}
【问题讨论】: