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
- XmlILModule.cs
- RefExpr.cs
- GeometryConverter.cs
- WebPartConnection.cs
- TimersDescriptionAttribute.cs
- CacheAxisQuery.cs
- ContainerParagraph.cs
- CrossContextChannel.cs
- ParallelTimeline.cs
- InstanceLockLostException.cs
- GradientStop.cs
- CachedBitmap.cs
- ResourceDictionaryCollection.cs
- TripleDESCryptoServiceProvider.cs
- ResponseStream.cs
- Preprocessor.cs
- JsonSerializer.cs
- SmiMetaData.cs
- SqlDataSourceConfigureFilterForm.cs
- HostingPreferredMapPath.cs
- Command.cs
- RowBinding.cs
- EmptyControlCollection.cs
- ExitEventArgs.cs
- HasRunnableWorkflowEvent.cs
- ListView.cs
- Profiler.cs
- DataGrid.cs
- SizeAnimationClockResource.cs
- TemplateLookupAction.cs
- XmlAnyAttributeAttribute.cs
- CollectionBuilder.cs
- ExternalDataExchangeService.cs
- LogRestartAreaEnumerator.cs
- ConfigurationSettings.cs
- SamlAdvice.cs
- PerfCounters.cs
- WaitHandleCannotBeOpenedException.cs
- ComplexBindingPropertiesAttribute.cs
- ParsedRoute.cs
- LineInfo.cs
- FontFamily.cs
- BulletedListDesigner.cs
- PeerCollaboration.cs
- AppDomainUnloadedException.cs
- DbParameterHelper.cs
- MyContact.cs
- DesignerView.cs
- ImageSourceValueSerializer.cs
- DbConvert.cs
- WebPartManager.cs
- WCFModelStrings.Designer.cs
- XmlCollation.cs
- WebPartConnection.cs
- RadioButtonStandardAdapter.cs
- TransformerConfigurationWizardBase.cs
- BooleanFacetDescriptionElement.cs
- ConsumerConnectionPoint.cs
- ClrProviderManifest.cs
- UniformGrid.cs
- dbdatarecord.cs
- BindingWorker.cs
- OdbcUtils.cs
- _LocalDataStoreMgr.cs
- RepeatBehaviorConverter.cs
- HtmlDocument.cs
- RequestNavigateEventArgs.cs
- Emitter.cs
- FixedSOMPage.cs
- DeferredReference.cs
- SiteMapHierarchicalDataSourceView.cs
- Variant.cs
- JumpTask.cs
- OdbcRowUpdatingEvent.cs
- EmptyEnumerator.cs
- GridViewColumnHeader.cs
- ErrorHandler.cs
- ImageBrush.cs
- OrderedDictionaryStateHelper.cs
- ReadOnlyAttribute.cs
- TableCellAutomationPeer.cs
- SettingsSection.cs
- WebBrowserContainer.cs
- ScriptComponentDescriptor.cs
- StrongNameMembershipCondition.cs
- Util.cs
- WebException.cs
- TriState.cs
- ProfilePropertyNameValidator.cs
- AlignmentYValidation.cs
- XmlSchemaSimpleContentRestriction.cs
- DigitShape.cs
- DynamicMethod.cs
- SqlClientMetaDataCollectionNames.cs
- WebUtil.cs
- DesignerWithHeader.cs
- EventPropertyMap.cs
- TreeWalker.cs
- PageThemeCodeDomTreeGenerator.cs
- Screen.cs