有沒有辦法通過反射來獲取屬性背後的對象?如何使用反射物體到達物體背後的「物體」?
我想管理一個屬性的動態設置。
例子:
class Animal
{
public string Name {get;set;}
public string Family {get;set;}
}
class Zoo
{
public Animal Lion {get;set;}
public Animal Panda {get;set;}
}
class Test
{
public void SetLionNameWithReflection()
{
Zoo londonZoo = new Zoo();
Type zooType = typeof(Zoo);
PropertyInfo lionProperty = zooType.GetProperty("Lion");
// Now what to write here so that I can manage to set Lion's name to Kaspar?
// (to manage this by reflection Lion.Name = "Kaspar");
}
}
我應該在上面的註釋部分添加什麼線條更?
謝謝!
'zooType'是一個'Type'對象;你需要在'londonZoo'上設置值。然而,這也不起作用,因爲你不能將一個'string'賦值給'Animal'類型的屬性。 – dlev
@dlev - 非常真實。 –