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
- UnaryExpression.cs
- FormatSettings.cs
- ScriptResourceDefinition.cs
- ResourceSetExpression.cs
- PolyQuadraticBezierSegment.cs
- Resources.Designer.cs
- ApplyImportsAction.cs
- ResourcesChangeInfo.cs
- BinaryMethodMessage.cs
- SqlDataAdapter.cs
- CustomAttributeFormatException.cs
- ListItemConverter.cs
- StrongNameMembershipCondition.cs
- TemplateKeyConverter.cs
- UriExt.cs
- EncoderParameters.cs
- CompilationLock.cs
- bindurihelper.cs
- RuntimeVariableList.cs
- StaticContext.cs
- TextFormatter.cs
- Zone.cs
- KeyInstance.cs
- GroupBox.cs
- UserControl.cs
- PeerNearMe.cs
- TimeSpanMinutesConverter.cs
- Size.cs
- VirtualStackFrame.cs
- WebEventTraceProvider.cs
- srgsitem.cs
- TemplatedWizardStep.cs
- QilDataSource.cs
- Formatter.cs
- WebPartConnectionsCloseVerb.cs
- SqlInfoMessageEvent.cs
- listitem.cs
- XPathScanner.cs
- ProgressPage.cs
- HtmlDocument.cs
- SendingRequestEventArgs.cs
- PictureBoxDesigner.cs
- Lasso.cs
- BooleanExpr.cs
- ResourcesBuildProvider.cs
- HebrewNumber.cs
- CngProvider.cs
- DesignerTextViewAdapter.cs
- ConfigurationValues.cs
- TableHeaderCell.cs
- ValidationError.cs
- CustomWebEventKey.cs
- ObjectSecurity.cs
- PrintDialogException.cs
- SqlNodeTypeOperators.cs
- QilXmlWriter.cs
- SafeNativeMethods.cs
- RelatedImageListAttribute.cs
- _CookieModule.cs
- BitArray.cs
- NativeActivityContext.cs
- PhysicalAddress.cs
- ColumnHeaderConverter.cs
- XmlSchemaSet.cs
- EntityDataSourceWizardForm.cs
- DragDeltaEventArgs.cs
- AddInDeploymentState.cs
- XamlToRtfParser.cs
- DiscoveryClientChannelBase.cs
- WebPartConnectVerb.cs
- DesigntimeLicenseContext.cs
- EntityConnectionStringBuilder.cs
- NullableFloatSumAggregationOperator.cs
- CacheModeValueSerializer.cs
- StandardToolWindows.cs
- LocalBuilder.cs
- ButtonBase.cs
- TextTreeExtractElementUndoUnit.cs
- DataRowExtensions.cs
- CustomErrorCollection.cs
- ObjectCache.cs
- DataGridViewColumnHeaderCell.cs
- CacheOutputQuery.cs
- ChangePassword.cs
- ThreadExceptionEvent.cs
- TargetControlTypeCache.cs
- FullTrustAssemblyCollection.cs
- SubtreeProcessor.cs
- BamlBinaryWriter.cs
- WebScriptServiceHost.cs
- DataGridViewDataErrorEventArgs.cs
- SiteMembershipCondition.cs
- MsmqIntegrationBindingCollectionElement.cs
- ComponentEditorPage.cs
- PeerApplicationLaunchInfo.cs
- TextElementCollectionHelper.cs
- AddInBase.cs
- TwoPhaseCommit.cs
- KeyProperty.cs
- TrimSurroundingWhitespaceAttribute.cs