dynamic 類型轉Idictionary
工作中經常使用到dynamic類型,有時候dynamic["xxxx"]這樣用又不行,只能是這樣用 dynamic.xxxx, 如果我的數據是動態的取值,
這裏直接掛了,不能這樣用。還是得轉一下,變成字典來操作。嗯,靠譜!
dynamic tpLabel = new { Wks26 = 26, Wks13 = 13, Wks3 = 4 }; IDictionary<string, object> dict1 = ((object)tpLabel) .GetType() .GetProperties() .ToDictionary(p => p.Name, p => p.GetValue(tpLabel)); foreach (var kvp in dict1) { Console.WriteLine($"{kvp.Key}: {kvp.Value}"); }
System.Dynamic.ExpandoObject 類型可以直接轉 IDictionary類型