2009-09-03 5 views
2

나에게는 매우 유사한 구조입니다. 하나를 쉽게 캐스팅하거나 다른 방법으로 변환 할 수있는 방법이 있기를 바랬습니다.ParameterInfo와 PropertyInfo를 바꿔 쓸 수있는 방법이 있습니까?

저는 리플렉션을 사용하여 마술을합니다. 필자는 매개 변수화 된 생성자를 사용하여 UI를 사용하여 매개 변수 값을 채우는 사용자 선택 객체를 만드는 경로를 선택했습니다.

문제는 구조체를 param으로 가져가는 객체 중 하나이며 구조체 속성에서 매개 변수 infos라는 속성 정보를 얻을 수 없습니다.

하지만 지금은 속성 정보를위한 매개 변수 정보 코드를 재현하고 싶지 않습니다. 매개 변수 정보로 속성 정보를 전달할 수 있으면 좋을 것입니다. 모든 것은 일부 속성의 일부 이름을 제외하고는 정말 비슷합니다. PropertyType과는 반대로 ParameterType과 그렇지 않습니다.

내 자신 만의 변환을하거나 필자가 필요로하는 속성이있는 클래스를 직접 작성한 다음 해당 사용자 지정 개체를 대신 사용해야 할 수도 있습니다. 건배.

답변

2

아니요, 없습니다.

두 클래스는 매우 다른 두 가지 개념을 나타냅니다.

속성은 유형의 특성입니다. PropertyInfo 클래스를 사용하면 값을 설정하거나 가져올 수 있으며 속성에 대한 추가 정보를 알려줍니다.

매개 변수는 메서드 서명의 특성입니다 (형식의 접근자는 매개 변수도 가질 수 있음). ParameterInfo 클래스는이 개념을 나타내며 매개 변수의 유형, 메소드 서명의 위치, 출력 매개 변수 또는 참조 매개 변수 등을 알려줍니다. MSDN doc을 참조하십시오. ParameterInfo는 Type에 직접 연결되지 않습니다.

관련 문제