Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Sys / System / Configuration / SettingsAttributes.cs / 1 / SettingsAttributes.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Configuration
{
using System;
///
/// Indicates that a setting is to be stored on a per-application basis.
///
[AttributeUsage(AttributeTargets.Property)]
public sealed class ApplicationScopedSettingAttribute : SettingAttribute {
}
///
/// Indicates to the provider what default value to use for this setting when no stored value
/// is found. The value should be encoded into a string and is interpreted based on the SerializeAs
/// value for this setting. For example, if SerializeAs is Xml, the default value will be
/// "stringified" Xml.
///
[AttributeUsage(AttributeTargets.Property)]
public sealed class DefaultSettingValueAttribute : Attribute {
private readonly string _value;
///
/// Constructor takes the default value as string.
///
public DefaultSettingValueAttribute(string value) {
_value = value;
}
///
/// Default value.
///
public string Value {
get {
return _value;
}
}
}
///
/// Indicates that the provider should disable any logic that gets invoked when an application
/// upgrade is detected.
///
[AttributeUsage(AttributeTargets.Property)]
public sealed class NoSettingsVersionUpgradeAttribute : Attribute {
}
///
/// Use this attribute to mark properties on a settings class that are to be treated
/// as settings. ApplicationSettingsBase will ignore all properties not marked with
/// this or a derived attribute.
///
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1813:AvoidUnsealedAttributes")]
[AttributeUsage(AttributeTargets.Property)]
public class SettingAttribute : Attribute {
}
///
/// Description for a particular setting.
///
[AttributeUsage(AttributeTargets.Property)]
public sealed class SettingsDescriptionAttribute : Attribute {
private readonly string _desc;
///
/// Constructor takes the description string.
///
public SettingsDescriptionAttribute(string description) {
_desc = description;
}
///
/// Description string.
///
public string Description {
get {
return _desc;
}
}
}
///
/// Description for a particular settings group.
///
[AttributeUsage(AttributeTargets.Class)]
public sealed class SettingsGroupDescriptionAttribute : Attribute {
private readonly string _desc;
///
/// Constructor takes the description string.
///
public SettingsGroupDescriptionAttribute(string description) {
_desc = description;
}
///
/// Description string.
///
public string Description {
get {
return _desc;
}
}
}
///
/// Name of a particular settings group.
///
[AttributeUsage(AttributeTargets.Class)]
public sealed class SettingsGroupNameAttribute : Attribute {
private readonly string _groupName;
///
/// Constructor takes the group name.
///
public SettingsGroupNameAttribute(string groupName) {
_groupName = groupName;
}
///
/// Name of the settings group.
///
public string GroupName {
get {
return _groupName;
}
}
}
///
/// Indicates the SettingsManageability for a group of/individual setting.
///
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Property)]
public sealed class SettingsManageabilityAttribute : Attribute {
private readonly SettingsManageability _manageability;
///
/// Constructor takes a SettingsManageability enum value.
///
public SettingsManageabilityAttribute(SettingsManageability manageability) {
_manageability = manageability;
}
///
/// SettingsManageability value to use
///
public SettingsManageability Manageability {
get {
return _manageability;
}
}
}
///
/// Indicates the provider associated with a group of/individual setting.
///
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Property)]
public sealed class SettingsProviderAttribute : Attribute {
private readonly string _providerTypeName;
///
/// Constructor takes the provider's assembly qualified type name.
///
public SettingsProviderAttribute(string providerTypeName) {
_providerTypeName = providerTypeName;
}
///
/// Constructor takes the provider's type.
///
public SettingsProviderAttribute(Type providerType) {
if (providerType != null) {
_providerTypeName = providerType.AssemblyQualifiedName;
}
}
///
/// Type name of the provider
///
public string ProviderTypeName {
get {
return _providerTypeName;
}
}
}
///
/// Indicates the SettingsSerializeAs for a group of/individual setting.
///
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Property)]
public sealed class SettingsSerializeAsAttribute : Attribute {
private readonly SettingsSerializeAs _serializeAs;
///
/// Constructor takes a SettingsSerializeAs enum value.
///
public SettingsSerializeAsAttribute(SettingsSerializeAs serializeAs) {
_serializeAs = serializeAs;
}
///
/// SettingsSerializeAs value to use
///
public SettingsSerializeAs SerializeAs {
get {
return _serializeAs;
}
}
}
///
/// Indicates the SpecialSetting for a group of/individual setting.
///
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Property)]
public sealed class SpecialSettingAttribute : Attribute {
private readonly SpecialSetting _specialSetting;
///
/// Constructor takes a SpecialSetting enum value.
///
public SpecialSettingAttribute(SpecialSetting specialSetting) {
_specialSetting = specialSetting;
}
///
/// SpecialSetting value to use
///
public SpecialSetting SpecialSetting {
get {
return _specialSetting;
}
}
}
///
/// Indicates that a setting is to be stored on a per-user basis.
///
[AttributeUsage(AttributeTargets.Property)]
public sealed class UserScopedSettingAttribute : SettingAttribute {
}
public enum SettingsManageability {
Roaming = 0
}
///
/// Indicates settings that are to be treated "specially".
///
public enum SpecialSetting {
ConnectionString = 0,
WebServiceUrl = 1
}
}
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- WindowsFormsSectionHandler.cs
- SiteMembershipCondition.cs
- NoResizeSelectionBorderGlyph.cs
- ProcessModule.cs
- UnmanagedMemoryAccessor.cs
- DataGridViewAdvancedBorderStyle.cs
- XmlSchemaSequence.cs
- ExpressionEditorAttribute.cs
- DataContext.cs
- ResourcesChangeInfo.cs
- FixedStringLookup.cs
- OleDbTransaction.cs
- DecodeHelper.cs
- SafeSerializationManager.cs
- DataControlLinkButton.cs
- ActivityXRefPropertyEditor.cs
- Condition.cs
- ISAPIApplicationHost.cs
- SafeEventHandle.cs
- AdRotator.cs
- ParseNumbers.cs
- SettingsProperty.cs
- DataGridComboBoxColumn.cs
- BaseCAMarshaler.cs
- DynamicControlParameter.cs
- CommonDialog.cs
- SkipQueryOptionExpression.cs
- SystemInfo.cs
- FontFamily.cs
- WindowInteractionStateTracker.cs
- ProtectedConfigurationSection.cs
- PersonalizableTypeEntry.cs
- QueryProcessor.cs
- IProvider.cs
- BindingCompleteEventArgs.cs
- DbDataSourceEnumerator.cs
- Query.cs
- UInt64Storage.cs
- PointIndependentAnimationStorage.cs
- HandlerMappingMemo.cs
- NameObjectCollectionBase.cs
- SHA256CryptoServiceProvider.cs
- IPAddress.cs
- DBConnection.cs
- BitmapEffectDrawingContent.cs
- WaitHandleCannotBeOpenedException.cs
- D3DImage.cs
- ConnectionPoint.cs
- ErrorCodes.cs
- SQLDateTimeStorage.cs
- AnimationClockResource.cs
- EmbeddedMailObject.cs
- MetafileHeaderWmf.cs
- IndicCharClassifier.cs
- EmbeddedMailObjectsCollection.cs
- AbsoluteQuery.cs
- ResourcePart.cs
- CompositionAdorner.cs
- SimpleBitVector32.cs
- ApplicationFileCodeDomTreeGenerator.cs
- NetworkInformationPermission.cs
- CombinedGeometry.cs
- MemberDescriptor.cs
- WebBrowserNavigatedEventHandler.cs
- BinaryUtilClasses.cs
- RunInstallerAttribute.cs
- keycontainerpermission.cs
- OperationInfo.cs
- CngProvider.cs
- LineInfo.cs
- HitTestWithGeometryDrawingContextWalker.cs
- LineBreak.cs
- FragmentQuery.cs
- StringStorage.cs
- WebRequestModulesSection.cs
- HighlightVisual.cs
- UnsupportedPolicyOptionsException.cs
- DataGridView.cs
- Opcode.cs
- SqlReorderer.cs
- ServiceModelActivationSectionGroup.cs
- DiscoveryDocument.cs
- PointLightBase.cs
- ImageBrush.cs
- InputProcessorProfiles.cs
- XmlWriter.cs
- SoapClientProtocol.cs
- HwndProxyElementProvider.cs
- XmlSignatureManifest.cs
- PointHitTestParameters.cs
- ViewEvent.cs
- IconHelper.cs
- Converter.cs
- SupportingTokenProviderSpecification.cs
- WSHttpSecurityElement.cs
- SettingsPropertyValue.cs
- StructuredProperty.cs
- HealthMonitoringSection.cs
- TraceContext.cs
- PhonemeEventArgs.cs