C#에서 리플렉션을 통해 배열 속성에 단일 값을 설정하는 방법이 있습니까?리플렉션을 통해 배열의 값 설정
내 속성을 다음과 같이 정의된다 :
PropertyInfo pi = myObject.GetType().GetProperty(nameOfPropertyToSet);
pi.SetValue(myObject, Convert.ChangeType(valueToSet, pi.PropertyType), null);
내가 설정하려면이 코드를 변경해야 할 것입니다 방법 : 나는 반사를 통해 그것을 설정하려면이 코드를 사용하여 "정상"속성에 대한
double[] Thresholds { get; set; }
임의의 위치의 배열 프로퍼티의 값 감사합니다.
은 BTW : 나는 인덱스 매개 변수를 사용하려고하지만 당신은 실제로 속성을 설정 단지 속성 값을 변경하지 않습니다 ... 인덱스 속성이 아닌 배열 인 속성에 대한
"속성 값 변경"은 "속성 설정"(직접 또는 간접적으로)과 동의어이므로 혼동을 일으킬 수 있습니다. 사실, 여기서 속성 값 **은 절대로 변경되지 않습니다 ** (같은 참조); 변경되는 배열 내용입니다. 또한, 'GetValue'는 여기에 두 번째 매개 변수가 필요합니다. –
GetValue가 고정되었습니다. – bluish