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
- DataProtection.cs
- LoadGrammarCompletedEventArgs.cs
- XmlException.cs
- DataRecord.cs
- WindowsFont.cs
- TextDecoration.cs
- SystemThemeKey.cs
- TextBounds.cs
- DelegateBodyWriter.cs
- DoubleCollection.cs
- UpdatePanel.cs
- SchemaLookupTable.cs
- WindowsGrip.cs
- InfoCardBinaryReader.cs
- ApplicationProxyInternal.cs
- XmlReaderDelegator.cs
- RayMeshGeometry3DHitTestResult.cs
- BoolExpr.cs
- ServerValidateEventArgs.cs
- AdornerHitTestResult.cs
- MemberAccessException.cs
- Constraint.cs
- OpenFileDialog.cs
- IconBitmapDecoder.cs
- Version.cs
- RequestContextBase.cs
- ModuleBuilderData.cs
- ConvertersCollection.cs
- TextBoxAutoCompleteSourceConverter.cs
- DynamicActivityTypeDescriptor.cs
- _OSSOCK.cs
- Axis.cs
- NamedPipeDuplicateContext.cs
- DrawingCollection.cs
- DateTimeOffset.cs
- XmlSchemaSequence.cs
- SemanticResultValue.cs
- IdleTimeoutMonitor.cs
- SqlReferenceCollection.cs
- EventSetter.cs
- BinaryReader.cs
- DetailsViewPageEventArgs.cs
- filewebrequest.cs
- ChangePasswordAutoFormat.cs
- GetReadStreamResult.cs
- RegexWriter.cs
- ReliabilityContractAttribute.cs
- CompressEmulationStream.cs
- StrokeCollection2.cs
- HtmlDocument.cs
- TreeWalker.cs
- GetBrowserTokenRequest.cs
- Brush.cs
- PointCollection.cs
- _SpnDictionary.cs
- Vector3DConverter.cs
- RsaSecurityTokenParameters.cs
- UserPreferenceChangingEventArgs.cs
- CompilationSection.cs
- InvalidPrinterException.cs
- SqlInternalConnection.cs
- OperationCanceledException.cs
- GACIdentityPermission.cs
- LayoutEngine.cs
- SelectionListDesigner.cs
- ProjectionCamera.cs
- ThicknessAnimationUsingKeyFrames.cs
- ObfuscationAttribute.cs
- AsyncOperation.cs
- AspNetCacheProfileAttribute.cs
- StructuralType.cs
- SecurityContext.cs
- PopupRootAutomationPeer.cs
- PropertyPath.cs
- PropertyGridCommands.cs
- XmlFormatReaderGenerator.cs
- ExpanderAutomationPeer.cs
- BamlTreeMap.cs
- ToolStripComboBox.cs
- SvcMapFileSerializer.cs
- TextRunCacheImp.cs
- Panel.cs
- ButtonFieldBase.cs
- DisplayInformation.cs
- EntitySetBaseCollection.cs
- ListBoxDesigner.cs
- ListArgumentProvider.cs
- DropShadowBitmapEffect.cs
- EventArgs.cs
- DbSetClause.cs
- HandledEventArgs.cs
- DataGridViewHitTestInfo.cs
- FocusManager.cs
- InternalDuplexChannelFactory.cs
- CurrentTimeZone.cs
- CodeMethodReturnStatement.cs
- UiaCoreTypesApi.cs
- DesignTimeResourceProviderFactoryAttribute.cs
- TableLayout.cs
- DeferredRunTextReference.cs