[英]How do you use reflection to get a sub property?
讓我們看看我是否可以解釋我要做什么...
假設我有一個對象,它的屬性路徑如下所示:
Appointment.Person.Name
如果我想更新“ Person”屬性,則可以執行以下操作:
PropertyInfo subPropertyInfo = apptObject.GetType().GetProperty("Person");
subPropertyInfo.SetValue(apptObject, replacementValue, null);
但是,如何更新根對象的Name屬性?
掌握Person
的當前值,然后以與當前相同的方式進行更新:
PropertyInfo subPropertyInfo = apptObject.GetType().GetProperty("Person");
Object p = subPropertyInfo.GetValue(apptObject);
PropertyInfo subSubPropertyInfo = p.GetType().GetProperty("Name");
subSubPropertyInfo.SetValue(p, replacementValue, null);
怎么樣:
PropertyInfo subPropertyInfo = apptObject.Person.GetType().GetProperty("Name");
subPropertyInfo.SetValue(apptObject.Person, replacementValue, null);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.