ExpandoObject的真正好处是什么?
添加到.NET 4 的ExpandoObject类允许您在运行时任意设置对象的属性。
使用a Dictionary<string, object>
或者甚至是Hashtable有什么优势吗?据我所知,这只是一个哈希表,您可以使用稍微简洁的语法访问。
例如,为什么这样:
dynamic obj = new ExpandoObject();obj.MyInt = 3;obj.MyString = "Foo";Console.WriteLine(obj.MyString);
真的比以下更好,或者大不相同:
var obj = new Dictionary<string, object>();obj["MyInt"] = 3;obj["MyString"] = "Foo";Console.WriteLine(obj["MyString"]);
使用ExpandoObject而不仅仅使用任意字典类型可以获得什么真正的优势,除了不明显你正在使用将在运行时确定的类型。
人到中年有点甜
婷婷同学_