是否可以將Dictionary<string, Anything>
轉換爲一致的中間泛型類型?所以我可以將<string, string>
,<string, bool>
,<string, int>
,<string, anything>
全部轉換爲相同類型的字典?C#將Dictionary <string,AnyType>轉換爲Dictionary <string,Object>(涉及反射)
我對正在使用重型反射一個項目,我需要能夠處理詞典類型,例如:
FieldInfo field = this.GetType().GetField(fieldName);
Dictionary<string, Object> dict = (Dictionary<string, Object>)field.GetValue(this);
上面的代碼是什麼,我現在已經和程序總是在失敗從field.GetValue投射到通用Dictionary<string, Object>
。
有沒有辦法做到這一點?還是應該找出處理這些字典的不同方法?
任何幫助將不勝感激。
這就像一個魅力,謝謝你AakashM和Gibsnag。這給了我一段時間的麻煩。 – 2012-04-18 10:27:31
不需要特殊的CastDict方法,您可以使用普通的Cast()LINQ運算符。 –
2013-07-03 03:01:34