런타임에 속성의 속성을 수정할 수 있습니까?


런타임에 속성의 속성을 수정할 수 있습니까?

런타임에 속성의 속성을 수정할 수 있습니까? 수업이 있다고 가정 해 봅시다. public class TheClass { [TheAttribute] public int TheProperty { get; set; } } 이 작업을 수행하는 방법이 있습니까? if (someCondition) { // disable attribute. Is this possible and how can this be done? } 아니오 이것은 불가능합니다. 런타임 시 메타데이터 또는 일반적으로 메타데이터의 속성 값을 수정할 수 없습니다. 엄밀히 말하면 위의 내용은 사실이 아닙니다. 일부 메타데이터 생성 및 수정을 허용하는 특정 API가 있습니다. 그러나 그것들은 매우 시나리오에 따라 다르며(ENC, 프로파일링, 디버깅) 범용 프로그램에서는 사용하지 않아야 합니다. 때에 따라 다르지; 반사 관점에서: 아니요. 당신은 할 수 없습니다. 그러나 데이터 바인딩과 같은 것에서 System.ComponentMode...


#attributes #c

원문링크 : 런타임에 속성의 속성을 수정할 수 있습니까?