특정 속성이 있는 속성을 효율적으로 검색하는 방법
특정 속성을 소유한 특정 유형 내 공공 속성 목록을 얻는 작업을 고려하세요. MyAttribute라고 하는 속성입니다. 이 속성은 AllowMultiple이 false로 설정된 상태로 정의되어 각 속성이 최대 하나의 속성 인스턴스를 소유할 수 있음을 나타냅니다.
일반적인 접근 방식에는 GetProperties()를 사용하여 속성을 반복하고 각 속성에 다음이 있는지 확인하는 작업이 포함됩니다. GetCustomAttribute[s]를 통한 MyAttribute. 그러나 이 기술은 차선책일 수 있습니다.
더 효율적인 솔루션 소개
이 검색 프로세스를 최적화하려면 다음 코드 조각을 고려하세요.
var props = t.GetProperties().Where( prop => Attribute.IsDefined(prop, typeof(MyAttribute)));
이 향상된 접근 방식은 Where 확장 메서드를 활용하여 속성 목록을 필터링하고 MyAttribute 특성이 있는 속성만 선택합니다. 정의되었습니다. 이 기술은 원하는 속성을 보유하지 않은 속성에 대한 속성 인스턴스 인스턴스화를 방지하므로 더 효율적입니다.
위 내용은 C#에서 특정 특성이 있는 속성을 효율적으로 검색하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!