2010-03-01 7 views
0

여러 값 유형과 다른 개체를 보유하고있는 개체가 있습니다. 발견 된 모든 설정 자에 대해 무언가를 수행 할 리플렉션을 사용하고 싶습니다.복잡한 개체에서 모든 세터 가져 오기

예를 들어 개체 A에는 3 개의 fied가 있고 자식 개체 B에는 다른 3 개의 필드가 있습니다. 그래서 내가 객체 A를 가지고 있으면 6 명의 세터 모두에게 뭔가를해야 할 것입니다.

희망이 있습니다. 당신의 개체 A에 대한

유형을 얻을 그것의 세터를 얻을하고 필드를 얻을 : 재귀 알고리즘을해야합니다 있도록

+0

나는 그것이 당신이 요구 한 것이 아니라는 것을 안다. 그러나 Castle Dynamic Proxy가 당신이 달성하고자하는 것에 유용할지 고려해야한다 : http://www.castleproject.org/dynamicproxy/index.html – Manu

+1

당신은 이해할 만하다. ,하지만 당신은 어떤 문제가 있는지 말하지 않았습니다. 이 편지를 쓸 사람이 필요한가요? 아니면 글쓰기를 시작했지만 문제가 발생 했습니까? –

+0

사실 나는 얼마나 많은 레벨이 있더라도 모든 설정자를 얻기 위해 동적으로 전체 오브젝트 트리로가는 방법을 모른다. – no9

답변

2

문제는 재귀입니다. 각 필드에 대해 유형, 설정자, 필드 등을 반복적으로 가져옵니다.

한편, 발견 된 각 설정 자에 대한 대리인을 호출하십시오. 또는 목록에 넣고 마지막에 대표단에 전화하십시오.

1

object.GetType().GetProperties()을 사용하면 모든 속성의 배열을 가져올 수 있습니다. 각 속성에 대해 속성의 유형을 가져올 수 있습니다. 그런 다음 재귀 적으로 해당 유형에 GetProperties()을 사용하여 속성을 가져올 수 있습니다.

관련 문제