Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / tx / System / Transactions / EnlistmentTraceIdentifier.cs / 1305376 / EnlistmentTraceIdentifier.cs
using System; namespace System.Transactions { ////// This identifier is used in tracing to distiguish transaction /// enlistments. This identifier is only unique within /// a given AppDomain. /// internal struct EnlistmentTraceIdentifier { public static readonly EnlistmentTraceIdentifier Empty = new EnlistmentTraceIdentifier(); public EnlistmentTraceIdentifier( Guid resourceManagerIdentifier, TransactionTraceIdentifier transactionTraceId, int enlistmentIdentifier ) { this.resourceManagerIdentifier = resourceManagerIdentifier; this.transactionTraceIdentifier = transactionTraceId; this.enlistmentIdentifier = enlistmentIdentifier; } private Guid resourceManagerIdentifier; ////// The Guid identifier of the resource manager that made the /// enlistment. If the enlistment is a Volatile enlistment, /// this value will be Guid.Empty. /// public Guid ResourceManagerIdentifier { get { return this.resourceManagerIdentifier; } } private TransactionTraceIdentifier transactionTraceIdentifier; ////// The TransactionTraceIdentifier for the transaction that is /// enlisted upon. /// public TransactionTraceIdentifier TransactionTraceId { get { return this.transactionTraceIdentifier; } } private int enlistmentIdentifier; ////// A value that distiguishes between multiple enlistments on the same /// transaction instance by the same resource manager. /// public int EnlistmentIdentifier { get { return this.enlistmentIdentifier; } } public override int GetHashCode() { return base.GetHashCode(); // Don't have anything better to do. } public override bool Equals ( object objectToCompare ) { if ( ! ( objectToCompare is EnlistmentTraceIdentifier ) ) { return false; } EnlistmentTraceIdentifier id = ( EnlistmentTraceIdentifier )objectToCompare; if ( (id.ResourceManagerIdentifier != this.ResourceManagerIdentifier ) || ( id.TransactionTraceId != this.TransactionTraceId ) || ( id.EnlistmentIdentifier != this.EnlistmentIdentifier ) ) { return false; } return true; } public static bool operator==( EnlistmentTraceIdentifier id1, EnlistmentTraceIdentifier id2 ) { return id1.Equals( id2 ); } // We need to equality operator and the compiler doesn't let us have an equality operator without an inequality operator, // so we added it and FXCop doesn't like the fact that we don't call it. [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] public static bool operator!=( EnlistmentTraceIdentifier id1, EnlistmentTraceIdentifier id2 ) { return !id1.Equals( id2 ); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DataReaderContainer.cs
- SafeRightsManagementHandle.cs
- NegationPusher.cs
- XLinq.cs
- ExceptionTrace.cs
- WebPartActionVerb.cs
- LinkedDataMemberFieldEditor.cs
- NGCPageContentSerializerAsync.cs
- ConstraintConverter.cs
- BamlResourceContent.cs
- SafeHandles.cs
- UiaCoreTypesApi.cs
- PerformanceCounterPermissionEntryCollection.cs
- securitycriticaldataClass.cs
- CurrentTimeZone.cs
- RightNameExpirationInfoPair.cs
- TextEndOfLine.cs
- JoinSymbol.cs
- IntSecurity.cs
- URI.cs
- DrawingContextWalker.cs
- Int64AnimationUsingKeyFrames.cs
- WebPartEditVerb.cs
- ContentIterators.cs
- OLEDB_Util.cs
- DownloadProgressEventArgs.cs
- KnownBoxes.cs
- DataKey.cs
- LexicalChunk.cs
- CurrencyWrapper.cs
- QueryConverter.cs
- WsatAdminException.cs
- ResXFileRef.cs
- NameObjectCollectionBase.cs
- BindingUtils.cs
- UserPersonalizationStateInfo.cs
- odbcmetadatafactory.cs
- MetabaseReader.cs
- SemaphoreSecurity.cs
- DigestTraceRecordHelper.cs
- DocumentPageView.cs
- CommentEmitter.cs
- BorderSidesEditor.cs
- ToolStripControlHost.cs
- UriTemplateTrieLocation.cs
- StateWorkerRequest.cs
- RegisteredExpandoAttribute.cs
- QilXmlReader.cs
- Rectangle.cs
- DebugInfoGenerator.cs
- TreeNodeSelectionProcessor.cs
- ControlPropertyNameConverter.cs
- StandardBindingElementCollection.cs
- SQLString.cs
- TextParagraphView.cs
- AssemblyBuilder.cs
- LinqDataSourceDisposeEventArgs.cs
- DateTimeConverter2.cs
- DataGridViewCellStyleChangedEventArgs.cs
- Qualifier.cs
- BitmapMetadataEnumerator.cs
- SqlInternalConnectionSmi.cs
- TransactionFlowAttribute.cs
- PrivilegeNotHeldException.cs
- WindowsGraphicsWrapper.cs
- DBCommandBuilder.cs
- wpf-etw.cs
- XamlReaderHelper.cs
- GridViewHeaderRowPresenterAutomationPeer.cs
- RuleSetCollection.cs
- ExecutionEngineException.cs
- DocumentPaginator.cs
- Properties.cs
- Authorization.cs
- Typography.cs
- NestedContainer.cs
- HtmlLink.cs
- TableRowCollection.cs
- XmlDownloadManager.cs
- NotifyIcon.cs
- ClientCredentialsElement.cs
- HttpCookie.cs
- SingleObjectCollection.cs
- NativeActivityFaultContext.cs
- DirectionalLight.cs
- ProxyWebPartConnectionCollection.cs
- ConnectionPool.cs
- UserInitiatedRoutedEventPermission.cs
- StrongTypingException.cs
- AnnotationHelper.cs
- TransactionFlowBindingElement.cs
- StickyNote.cs
- ProviderBase.cs
- MarkupObject.cs
- HostingEnvironmentException.cs
- ClearCollection.cs
- CodeSnippetTypeMember.cs
- Converter.cs
- TraceSwitch.cs
- MasterPageBuildProvider.cs