애플리케이션 설정 특성

애플리케이션 설정 아키텍처는 애플리케이션 설정 래퍼 클래스 또는 개별 속성에 적용할 수 있는 많은 특성을 제공합니다. 이러한 특성은 사용자 지정 래퍼의 명시된 요구 사항에 맞게 작동을 조정하기 위해 애플리케이션 설정 인프라, 특히 설정 공급자에 의해 런타임에 검사됩니다.

다음 표에서는 애플리케이션 설정 래퍼 클래스, 이 클래스의 개별 속성 또는 둘 다에 적용할 수 있는 특성을 나열합니다. 정의상 UserScopedSettingAttribute 또는 ApplicationScopedSettingAttribute라는 단일 범위 특성만 각 설정 속성에 적용해야 합니다.

참고

SettingsProvider 클래스에서 파생된 사용자 지정 설정 공급자는 ApplicationScopedSettingAttribute, UserScopedSettingAttribute, DefaultSettingValueAttribute의 세 가지 특성을 인식하는 데만 필요합니다.

attribute 대상 설명
SettingsProviderAttribute 모두 지속성에 사용할 설정 공급자의 짧은 이름을 지정합니다.

이 특성을 제공하지 않으면 기본 공급자인 LocalFileSettingsProvider가 사용됩니다.
UserScopedSettingAttribute 모두 속성을 사용자 범위 애플리케이션 설정으로 정의합니다.
ApplicationScopedSettingAttribute 모두 속성을 애플리케이션 범위 애플리케이션 설정으로 정의합니다.
DefaultSettingValueAttribute 속성 공급자가 이 속성의 하드 코딩된 기본값으로 역직렬화할 수 있는 문자열을 지정합니다.

LocalFileSettingsProvider에는 이 특성이 필요하지 않으며 이미 지속되는 값이 있는 경우 이 특성에서 제공하는 모든 값을 재정의합니다.
SettingsDescriptionAttribute 속성 런타임 및 디자인 타임 도구에서 주로 사용하는 개별 설정에 대한 설명 테스트를 제공합니다.
SettingsGroupNameAttribute 클래스 설정 그룹에 대한 명시적 이름을 제공합니다. 이 특성이 없으면 ApplicationSettingsBase는 래퍼 클래스 이름을 사용합니다.
SettingsGroupDescriptionAttribute 클래스 런타임 및 디자인 타임 도구에서 주로 사용하는 설정 그룹에 대한 설명 테스트를 제공합니다.
SettingsManageabilityAttribute 모두 설정 그룹 또는 속성에 제공해야 하는 관리 효율성 서비스를 0개 이상 지정합니다. 사용 가능한 서비스는 SettingsManageability 열거형으로 설명됩니다.
SpecialSettingAttribute 속성 설정이 설정 공급자의 특수 처리를 제안하는 연결 문자열과 같이 미리 정의된 특수 범주에 속한다는 것을 나타냅니다. 이 특성에 대해 미리 정의된 범주는 SpecialSetting 열거형에 의해 정의됩니다.
SettingsSerializeAsAttribute 모두 설정 그룹 또는 속성에 대한 기본 직렬화 메커니즘을 지정합니다. 사용 가능한 직렬화 메커니즘은 SettingsSerializeAs 열거형에 의해 정의됩니다.
NoSettingsVersionUpgradeAttribute 속성 설정 공급자가 표시된 속성에 대한 모든 애플리케이션 업그레이드 기능을 사용하지 않도록 설정해야 함을 지정합니다.

클래스는 특성을 애플리케이션 설정 래퍼 클래스에만 적용할 수 있음을 나타냅니다. 속성은 특성이 설정 속성만 적용할 수 있음을 나타냅니다. 둘 다는 특성을 어느 수준에서나 적용할 수 있음을 나타냅니다.

참고 항목