Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / CompMod / System / Diagnostics / TraceSwitch.cs / 1 / TraceSwitch.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ namespace System.Diagnostics { using System; using System.ComponentModel; using System.Security; using System.Security.Permissions; ////// [SwitchLevel(typeof(TraceLevel))] public class TraceSwitch : Switch { ///Provides a multi-level switch to enable or disable tracing /// and debug output for a compiled application or framework. ////// public TraceSwitch(string displayName, string description) : base(displayName, description) { } public TraceSwitch(string displayName, string description, string defaultSwitchValue) : base(displayName, description, defaultSwitchValue) { } ///Initializes a new instance of the ///class. /// public TraceLevel Level { get { return (TraceLevel)SwitchSetting; } [SecurityPermission(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.UnmanagedCode)] set { if (value < TraceLevel.Off || value > TraceLevel.Verbose) throw new ArgumentException(SR.GetString(SR.TraceSwitchInvalidLevel)); SwitchSetting = (int)value; } } ///Gets or sets the trace /// level that specifies what messages to output for tracing and debugging. ////// public bool TraceError { get { return (Level >= TraceLevel.Error); } } ///Gets a value /// indicating whether the ///is set to /// , , , or /// . /// public bool TraceWarning { get { return (Level >= TraceLevel.Warning); } } ///Gets a value /// indicating whether the ///is set to /// , , or . /// public bool TraceInfo { get { return (Level >= TraceLevel.Info); } } ///Gets a value /// indicating whether the ///is set to /// or . /// public bool TraceVerbose { get { return (Level == TraceLevel.Verbose); } } ///Gets a value /// indicating whether the ///is set to /// . /// protected override void OnSwitchSettingChanged() { int level = SwitchSetting; if (level < (int)TraceLevel.Off) { Trace.WriteLine(SR.GetString(SR.TraceSwitchLevelTooLow, DisplayName)); SwitchSetting = (int)TraceLevel.Off; } else if (level > (int)TraceLevel.Verbose) { Trace.WriteLine(SR.GetString(SR.TraceSwitchLevelTooHigh, DisplayName)); SwitchSetting = (int)TraceLevel.Verbose; } } protected override void OnValueChanged() { SwitchSetting = (int) Enum.Parse(typeof(TraceLevel), Value, true); } } }/// Update the level for this switch. /// ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- XmlSiteMapProvider.cs
- AutomationElementCollection.cs
- DefaultSerializationProviderAttribute.cs
- HttpListenerResponse.cs
- PerfService.cs
- ResolvedKeyFrameEntry.cs
- SettingsPropertyCollection.cs
- ProbeRequestResponseAsyncResult.cs
- StyleTypedPropertyAttribute.cs
- Automation.cs
- SafeUserTokenHandle.cs
- RepeaterItem.cs
- ConfigsHelper.cs
- CollectionCodeDomSerializer.cs
- DetailsView.cs
- AssemblyNameUtility.cs
- EntityCommandExecutionException.cs
- RequestTimeoutManager.cs
- SessionSymmetricTransportSecurityProtocolFactory.cs
- HostProtectionPermission.cs
- UIElementCollection.cs
- HoistedLocals.cs
- StrongNameKeyPair.cs
- Transaction.cs
- LabelLiteral.cs
- HandlerMappingMemo.cs
- DetailsViewActionList.cs
- DiagnosticsConfiguration.cs
- ConstructorExpr.cs
- DataTableCollection.cs
- CollectionViewGroupRoot.cs
- AlignmentYValidation.cs
- SizeValueSerializer.cs
- AttachedAnnotation.cs
- ObjectStateEntryDbUpdatableDataRecord.cs
- AutomationPatternInfo.cs
- Scene3D.cs
- PersistChildrenAttribute.cs
- PerfProviderCollection.cs
- ProcessActivityTreeOptions.cs
- TransportContext.cs
- XmlLoader.cs
- PtsCache.cs
- AnimatedTypeHelpers.cs
- CatalogPartChrome.cs
- arabicshape.cs
- HtmlToClrEventProxy.cs
- NumberFormatInfo.cs
- SqlException.cs
- List.cs
- TraceLevelHelper.cs
- BoolLiteral.cs
- TransformerConfigurationWizardBase.cs
- PreviewControlDesigner.cs
- OptimizedTemplateContentHelper.cs
- HostProtectionException.cs
- PackUriHelper.cs
- StrokeCollection2.cs
- XmlObjectSerializerContext.cs
- SelectedCellsChangedEventArgs.cs
- Debug.cs
- TransactionFlowBindingElement.cs
- DbMetaDataColumnNames.cs
- Viewport2DVisual3D.cs
- ExtensionsSection.cs
- DefaultDiscoveryServiceExtension.cs
- SimpleType.cs
- XamlPointCollectionSerializer.cs
- SrgsToken.cs
- wgx_exports.cs
- ZipIOExtraFieldZip64Element.cs
- CacheSection.cs
- SystemColors.cs
- DataListItemCollection.cs
- StateInitializationDesigner.cs
- ObjectHelper.cs
- XmlToDatasetMap.cs
- BaseCollection.cs
- NonBatchDirectoryCompiler.cs
- InputReferenceExpression.cs
- Image.cs
- LinqExpressionNormalizer.cs
- XamlBrushSerializer.cs
- StackSpiller.Generated.cs
- TextProperties.cs
- BmpBitmapEncoder.cs
- XmlSchemaSimpleTypeUnion.cs
- CookielessData.cs
- ExpressionLink.cs
- Expressions.cs
- Simplifier.cs
- BamlLocalizableResourceKey.cs
- ConstraintCollection.cs
- WsdlInspector.cs
- SimplePropertyEntry.cs
- CompilerError.cs
- XmlToDatasetMap.cs
- CompilationUtil.cs
- Exceptions.cs
- GPPOINT.cs