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
- InternalEnumValidator.cs
- ListBindingHelper.cs
- DocumentOrderQuery.cs
- PointCollection.cs
- RtfToXamlReader.cs
- SignerInfo.cs
- ConfigXmlText.cs
- WmlCommandAdapter.cs
- EntityDataSourceContextCreatingEventArgs.cs
- JsonCollectionDataContract.cs
- CqlLexer.cs
- XmlSchemaGroup.cs
- PerformanceCounterPermissionAttribute.cs
- ComPlusDiagnosticTraceRecords.cs
- BitmapScalingModeValidation.cs
- UnsafeNativeMethodsPenimc.cs
- DefaultBinder.cs
- OpenFileDialog.cs
- EntityClassGenerator.cs
- ComplexPropertyEntry.cs
- Point3DAnimationBase.cs
- ServiceModelEnumValidatorAttribute.cs
- UpDownBase.cs
- PenThreadWorker.cs
- CodeDOMUtility.cs
- ChangeDirector.cs
- PhotoPrintingIntent.cs
- SimpleLine.cs
- MobileContainerDesigner.cs
- PageVisual.cs
- ContainerSelectorActiveEvent.cs
- WinFormsComponentEditor.cs
- SqlServices.cs
- BrowserCapabilitiesFactoryBase.cs
- AuthenticationServiceManager.cs
- IProducerConsumerCollection.cs
- WizardStepBase.cs
- HttpModuleCollection.cs
- EntityDataSourceValidationException.cs
- UIPermission.cs
- FlowDocument.cs
- CorrelationManager.cs
- DataGridViewCellStyleEditor.cs
- ClickablePoint.cs
- SecurityTokenException.cs
- FileUpload.cs
- ToolStripSettings.cs
- GridViewRow.cs
- SimpleHandlerFactory.cs
- HtmlInputButton.cs
- DataSourceCache.cs
- TableParagraph.cs
- LiteralLink.cs
- TextServicesCompartmentEventSink.cs
- ExpressionParser.cs
- XPathScanner.cs
- ComponentCommands.cs
- ToolboxItemSnapLineBehavior.cs
- ConstructorArgumentAttribute.cs
- PermissionSetTriple.cs
- PropertyDescriptorCollection.cs
- BrowserCapabilitiesCompiler.cs
- Point3DCollectionConverter.cs
- ScrollBarAutomationPeer.cs
- AssertSection.cs
- CollectionViewGroup.cs
- QilFactory.cs
- FieldBuilder.cs
- SHA512Managed.cs
- UpdateEventArgs.cs
- LineProperties.cs
- CompiledRegexRunnerFactory.cs
- DataGridViewColumn.cs
- HtmlInputControl.cs
- FollowerQueueCreator.cs
- Vector.cs
- CodeTypeReferenceSerializer.cs
- SqlCacheDependencyDatabase.cs
- StickyNote.cs
- RtfControlWordInfo.cs
- IisTraceListener.cs
- ITextView.cs
- SecurityContext.cs
- SerializationInfo.cs
- InputScope.cs
- StringArrayEditor.cs
- HtmlShim.cs
- FileUtil.cs
- FormView.cs
- VirtualPathUtility.cs
- SqlUserDefinedTypeAttribute.cs
- DetailsViewPageEventArgs.cs
- Invariant.cs
- ToolStripInSituService.cs
- DetailsViewCommandEventArgs.cs
- TextUtf8RawTextWriter.cs
- ElementUtil.cs
- FormViewUpdateEventArgs.cs
- GZipDecoder.cs
- Section.cs