110,570
社区成员
发帖
与我相关
我的任务
分享
var dir = new Dictionary<string, string> { { "a", "11" } };
dynamic ex = new ExpandoObject();
var exDict = (IDictionary<string, object>)ex;
foreach (var p in dir)
exDict.Add(p.Key, p.Value);
Console.WriteLine(ex.a); // 输出 11
当然这也需要写代码的时候预先知道dir里面有a这个键,如果内容很多,手写匿名对象就不太现实,使用dynamic会更方便的是。如果预先也无法获知,那么就只能直接用Dictionary了。