2011-09-19 4 views

답변

3

먼저 classA 내부 방법 StringToProperty (내가 공개? 할 수 없어 보라) 그것이 공개적인 방법 일 수 있는지 확인하십시오. 메소드가 비공개 인 메소드를 호출 할 수 있기 때문에 메소드를 공개 할 수 없다고 예상하면 정확하지 않습니다. 공용 메서드/속성을 제어 된 창으로 간주하여 기본 개인 멤버를 생각하십시오.

속성을 검색하려면 사용 리플렉션을 사용할 수 있습니다. 추가 정보를 원하시면 여기를

public string StringToProperty(string fieldName) 
{ 
    Type myType = this.GetType(); 
    FieldInfo field = myType.GetField(fieldName, BindingFlags.NonPublic | BindingFlags.Instance); 
    return Convert.ToString(field.GetValue(this)); 
} 

봐 : 그것을 할,하지만 난 그 반사 당신이로드하고 얼마나 자주하는 내용에 따라 성능 저하를 초래할 수있다 경고한다 http://msdn.microsoft.com/en-us/library/system.reflection.fieldinfo.getvalue.aspx

. FieldInfo 데이터의 일종의 캐싱을 수행해야 할 수도 있기 때문에 필요에 따라 충분히 수행되는지 확인하십시오.

관련 문제