Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / System.Runtime.DurableInstancing / System / Runtime / DurableInstancing / InstanceKeyCollisionException.cs / 1305376 / InstanceKeyCollisionException.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.Runtime.DurableInstancing { using System.Diagnostics.CodeAnalysis; using System.Runtime.Serialization; using System.Security; using System.Xml.Linq; [Serializable] public class InstanceKeyCollisionException : InstancePersistenceCommandException { const string ConflictingInstanceIdName = "instancePersistenceConflictingInstanceId"; const string InstanceKeyName = "instancePersistenceInstanceKey"; public InstanceKeyCollisionException() : this(SRCore.KeyCollisionDefault, null) { } public InstanceKeyCollisionException(string message) : this(message, null) { } public InstanceKeyCollisionException(string message, Exception innerException) : base(message, innerException) { } public InstanceKeyCollisionException(XName commandName, Guid instanceId, InstanceKey instanceKey, Guid conflictingInstanceId) : this(commandName, instanceId, instanceKey, conflictingInstanceId, null) { } public InstanceKeyCollisionException(XName commandName, Guid instanceId, InstanceKey instanceKey, Guid conflictingInstanceId, Exception innerException) : this(commandName, instanceId, instanceKey, conflictingInstanceId, ToMessage(instanceId, instanceKey, conflictingInstanceId), innerException) { } public InstanceKeyCollisionException(XName commandName, Guid instanceId, InstanceKey instanceKey, Guid conflictingInstanceId, string message, Exception innerException) : base(commandName, instanceId, message, innerException) { ConflictingInstanceId = conflictingInstanceId; InstanceKey = instanceKey; } [SecurityCritical] protected InstanceKeyCollisionException(SerializationInfo info, StreamingContext context) : base(info, context) { ConflictingInstanceId = (Guid) info.GetValue(ConflictingInstanceIdName, typeof(Guid)); Guid guid = (Guid) info.GetValue(InstanceKeyName, typeof(Guid)); InstanceKey = guid == Guid.Empty ? null : new InstanceKey(guid); } public Guid ConflictingInstanceId { get; private set; } public InstanceKey InstanceKey { get; private set; } [Fx.Tag.SecurityNote(Critical = "Overrides critical inherited method")] [SecurityCritical] [SuppressMessage(FxCop.Category.Security, FxCop.Rule.SecureGetObjectDataOverrides, Justification = "Method is SecurityCritical")] public override void GetObjectData(SerializationInfo info, StreamingContext context) { base.GetObjectData(info, context); info.AddValue(ConflictingInstanceIdName, ConflictingInstanceId, typeof(Guid)); info.AddValue(InstanceKeyName, (InstanceKey != null && InstanceKey.IsValid) ? InstanceKey.Value : Guid.Empty, typeof(Guid)); } static string ToMessage(Guid instanceId, InstanceKey instanceKey, Guid conflictingInstanceId) { if (instanceKey != null && instanceKey.IsValid) { if (instanceId != Guid.Empty && conflictingInstanceId != Guid.Empty) { return SRCore.KeyCollisionSpecific(instanceId, instanceKey.Value, conflictingInstanceId); } return SRCore.KeyCollisionSpecificKeyOnly(instanceKey.Value); } return SRCore.KeyCollisionDefault; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DodSequenceMerge.cs
- EventLogPermissionAttribute.cs
- WebPartCollection.cs
- CultureNotFoundException.cs
- DocumentDesigner.cs
- PrintDialog.cs
- SHA1.cs
- CharacterShapingProperties.cs
- ApplyImportsAction.cs
- WebRequestModuleElement.cs
- SHA1Managed.cs
- EntityDataSourceContextDisposingEventArgs.cs
- _Connection.cs
- CapabilitiesUse.cs
- DependencyProperty.cs
- RemoteWebConfigurationHostStream.cs
- OuterGlowBitmapEffect.cs
- ObjectQueryProvider.cs
- DecoderFallbackWithFailureFlag.cs
- DispatcherFrame.cs
- DockEditor.cs
- ListChunk.cs
- SignedXml.cs
- DependencyObjectProvider.cs
- DateTimeFormatInfo.cs
- RowCache.cs
- Binding.cs
- PasswordDeriveBytes.cs
- HttpProfileBase.cs
- NaturalLanguageHyphenator.cs
- ContextBase.cs
- EncodingDataItem.cs
- PipelineModuleStepContainer.cs
- FutureFactory.cs
- ResourceExpressionBuilder.cs
- IntSecurity.cs
- TargetConverter.cs
- Icon.cs
- SynchronizedInputHelper.cs
- PenContexts.cs
- DescendantBaseQuery.cs
- WebPartManagerInternals.cs
- URL.cs
- Psha1DerivedKeyGenerator.cs
- ImageFormatConverter.cs
- SoapIncludeAttribute.cs
- Clock.cs
- AndCondition.cs
- DataGridViewBand.cs
- BinaryNode.cs
- DataGridColumnHeaderItemAutomationPeer.cs
- CharStorage.cs
- SmiXetterAccessMap.cs
- AuthenticationServiceManager.cs
- PtsCache.cs
- OpenTypeCommon.cs
- ipaddressinformationcollection.cs
- DoubleAnimation.cs
- RemotingConfigParser.cs
- Latin1Encoding.cs
- DataServices.cs
- TablePatternIdentifiers.cs
- EpmContentSerializer.cs
- StrongName.cs
- CheckBoxRenderer.cs
- mactripleDES.cs
- TypeUtil.cs
- ActivityExecutorDelegateInfo.cs
- WebScriptMetadataMessage.cs
- sitestring.cs
- TokenBasedSetEnumerator.cs
- DebugHandleTracker.cs
- FocusTracker.cs
- ListViewHitTestInfo.cs
- StoreUtilities.cs
- IPAddressCollection.cs
- QilValidationVisitor.cs
- WebServiceHostFactory.cs
- NameObjectCollectionBase.cs
- RepeatBehaviorConverter.cs
- JsonSerializer.cs
- CodeTypeMemberCollection.cs
- _AutoWebProxyScriptEngine.cs
- FamilyMapCollection.cs
- DataGridViewColumnConverter.cs
- ExpressionBindings.cs
- XmlSchemaAppInfo.cs
- ExtractedStateEntry.cs
- GACMembershipCondition.cs
- ChangeConflicts.cs
- IODescriptionAttribute.cs
- XamlHostingConfiguration.cs
- HostSecurityManager.cs
- ObjectContextServiceProvider.cs
- PropertyItemInternal.cs
- DurableMessageDispatchInspector.cs
- HostedElements.cs
- ListViewItem.cs
- SafeTimerHandle.cs
- MarkerProperties.cs