使用反射:獲取泛型類型的參數的實例的屬性值
如果我有X<Y>
類型的實例(我不知道Y
到底是什麼),因爲X
是一個通用型(X<T>
),怎麼辦我得到Y
上的房產價值?
喜歡的東西:
Type yType = currentObject.GetType().GetGenericArguments()[0];
// How do I get yInstance???
var yInstance = Convert.ChangeType(???, yType);
我需要去:
object requiredValue = yType.GetProperty("YProperty").GetValue(yInstance, null);
這取決於'X'是什麼以及它如何與'Y'相關。例如,如果'X'是一個集合,那麼'Y'可能是該集合中的一個項目。 –
X是一個自定義類類型,Y也是一個自定義類類型。 – user1647697
再說一遍,它們是如何相關的?_是否有'X'屬性給你一個'Y'? 'X'屬性是否具有屬性類型爲'Y'的屬性? _好,這取決於他們是如何相互關聯的。 –