Как получить ценность свойства от объекта класса во время выполнения, используя отражениеC#

Место общения программистов C#
Anonymous
Как получить ценность свойства от объекта класса во время выполнения, используя отражение

Сообщение Anonymous »

У меня есть класс что -то вроде ниже: < /p>

Код: Выделить всё

class A : B
{
public A(C entity) : base(entity) {}
}

abstract class B
{
public B(T entity)
{
Entity = entity;
}

public T Entity { get; private set; }
}

class C : D
{
public string prop2 {get; set;}
}

class D
{
public string prop1 {get; set;}
}

Main()
{
A obj = new A(new C());
obj.GetType().GetProperty("prop1",  BindingsFlag.Instance | BindingsFlag.FlatteredHierarchy) //  is null
}
< /code>
У меня есть объект класса A.
Я хочу получить значение свойства из этого объекта во время выполнения. < /p>
Я пытаюсь с: < /p>
obj.GetType().GetProperty("propertyName",
BindingsFlag.FlattenHierarchy).GetValue(obj, null);
однако getProperty () является возвращением NULL, так как это свойство объявляется в классе D или C.
может кто -нибудь предложить мне, как это достичь?

Подробнее здесь: https://stackoverflow.com/questions/288 ... reflection

Вернуться в «C#»