Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / CompMod / System / Diagnostics / CorrelationManager.cs / 1 / CorrelationManager.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Collections; using System.Collections.Specialized; using System.Threading; using System.Runtime.Remoting.Messaging; namespace System.Diagnostics { public class CorrelationManager { private const string transactionSlotName = "System.Diagnostics.Trace.CorrelationManagerSlot"; private const string activityIdSlotName = "E2ETrace.ActivityID"; internal CorrelationManager() { } public Guid ActivityId { get { Object id = CallContext.LogicalGetData(activityIdSlotName); if (id != null) return (Guid) id; else return Guid.Empty; } set { CallContext.LogicalSetData(activityIdSlotName, value); } } public Stack LogicalOperationStack { get { return GetLogicalOperationStack(); } } public void StartLogicalOperation(object operationId) { if (operationId == null) throw new ArgumentNullException("operationId"); Stack idStack = GetLogicalOperationStack(); idStack.Push(operationId); } public void StartLogicalOperation() { StartLogicalOperation(Guid.NewGuid()); } public void StopLogicalOperation() { Stack idStack = GetLogicalOperationStack(); idStack.Pop(); } private Stack GetLogicalOperationStack() { Stack idStack = CallContext.LogicalGetData(transactionSlotName) as Stack; if (idStack == null) { idStack = new Stack(); CallContext.LogicalSetData(transactionSlotName, idStack); } return idStack; } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SendingRequestEventArgs.cs
- MultiSelectRootGridEntry.cs
- FilterQuery.cs
- NumberEdit.cs
- TokenFactoryCredential.cs
- ConcurrentBag.cs
- HostingPreferredMapPath.cs
- ImageMap.cs
- UnmanagedMemoryStream.cs
- RuleSetDialog.cs
- CompensatableTransactionScopeActivity.cs
- PriorityQueue.cs
- MenuCommand.cs
- WebPartCollection.cs
- SetterBase.cs
- DecodeHelper.cs
- TextEditorSpelling.cs
- TreeNodeClickEventArgs.cs
- DynamicDataManager.cs
- _LocalDataStoreMgr.cs
- TextPointer.cs
- Regex.cs
- VarRefManager.cs
- MarshalByRefObject.cs
- DoubleAnimationBase.cs
- ScrollProviderWrapper.cs
- propertytag.cs
- xsdvalidator.cs
- Types.cs
- Rule.cs
- SerializationAttributes.cs
- TrustExchangeException.cs
- NavigationFailedEventArgs.cs
- RadialGradientBrush.cs
- BinarySecretKeyIdentifierClause.cs
- IMembershipProvider.cs
- SelectionItemPattern.cs
- coordinatorfactory.cs
- SynchronizedKeyedCollection.cs
- Line.cs
- Conditional.cs
- BuildProvider.cs
- ExtenderProvidedPropertyAttribute.cs
- SystemResources.cs
- RadioButton.cs
- infer.cs
- SchemaImporterExtensionElement.cs
- ModifierKeysValueSerializer.cs
- FastEncoder.cs
- HtmlContainerControl.cs
- ApplicationSettingsBase.cs
- DictionaryBase.cs
- SystemUnicastIPAddressInformation.cs
- ObjectView.cs
- OperationDescriptionCollection.cs
- VirtualizingPanel.cs
- ParameterRetriever.cs
- InputScopeConverter.cs
- LightweightCodeGenerator.cs
- BamlResourceSerializer.cs
- Triplet.cs
- TrustManagerPromptUI.cs
- ServiceThrottlingBehavior.cs
- FileInfo.cs
- PolyBezierSegment.cs
- Transform.cs
- RewritingPass.cs
- DataReaderContainer.cs
- SchemaNames.cs
- PreProcessor.cs
- HtmlSelect.cs
- FullTextBreakpoint.cs
- TypeGeneratedEventArgs.cs
- BooleanStorage.cs
- InternalSafeNativeMethods.cs
- CompiledIdentityConstraint.cs
- DayRenderEvent.cs
- AjaxFrameworkAssemblyAttribute.cs
- EnvelopedPkcs7.cs
- NopReturnReader.cs
- ClipboardProcessor.cs
- SoapEnumAttribute.cs
- WebPartTransformerCollection.cs
- OutOfMemoryException.cs
- DesignTimeResourceProviderFactoryAttribute.cs
- mactripleDES.cs
- OdbcConnectionStringbuilder.cs
- DockPanel.cs
- WebPartActionVerb.cs
- WindowsGraphics2.cs
- GetPageCompletedEventArgs.cs
- RemotingConfiguration.cs
- SatelliteContractVersionAttribute.cs
- InkPresenter.cs
- GridViewEditEventArgs.cs
- HttpListenerContext.cs
- HttpListenerRequest.cs
- DetailsViewUpdatedEventArgs.cs
- TdsEnums.cs
- SafeEventHandle.cs