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
![Network programming in C#, Network Programming in VB.NET, Network Programming in .NET](/images/book.jpg)
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- PropertyGridEditorPart.cs
- SafeTokenHandle.cs
- ValidateNames.cs
- _SslState.cs
- HandlerMappingMemo.cs
- SiteMapNodeCollection.cs
- SqlDataSource.cs
- HtmlElementErrorEventArgs.cs
- SoapAttributeAttribute.cs
- CalendarDay.cs
- QueryOperationResponseOfT.cs
- ApplicationProxyInternal.cs
- TextFormatterImp.cs
- XLinq.cs
- Pkcs7Signer.cs
- DataGridViewRowPostPaintEventArgs.cs
- InlineObject.cs
- IndexedString.cs
- DelegatingHeader.cs
- ExecutedRoutedEventArgs.cs
- As.cs
- ReferentialConstraint.cs
- SoapExtensionTypeElementCollection.cs
- ComboBox.cs
- TextEditor.cs
- GenericTypeParameterConverter.cs
- DesignRelation.cs
- ApplicationServicesHostFactory.cs
- ObjectQuery_EntitySqlExtensions.cs
- Util.cs
- DefaultValidator.cs
- CacheForPrimitiveTypes.cs
- newinstructionaction.cs
- Point3DAnimationBase.cs
- StylusSystemGestureEventArgs.cs
- ExpressionBuilderCollection.cs
- SqlBulkCopyColumnMapping.cs
- CodeGeneratorOptions.cs
- Overlapped.cs
- ReturnValue.cs
- BufferedGraphicsContext.cs
- SolidColorBrush.cs
- X509Chain.cs
- XamlSerializationHelper.cs
- EdmProperty.cs
- Visitors.cs
- DrawingGroupDrawingContext.cs
- RuleCache.cs
- _LazyAsyncResult.cs
- EnumMemberAttribute.cs
- NTAccount.cs
- UInt16Converter.cs
- TextServicesDisplayAttributePropertyRanges.cs
- infer.cs
- SpecialNameAttribute.cs
- AnimatedTypeHelpers.cs
- FrameworkPropertyMetadata.cs
- PackagePart.cs
- SchemaHelper.cs
- InstallerTypeAttribute.cs
- HttpWebRequestElement.cs
- XmlSchemaValidator.cs
- SizeValueSerializer.cs
- SatelliteContractVersionAttribute.cs
- DesignerImageAdapter.cs
- DataRow.cs
- ImageAttributes.cs
- MenuItemBindingCollection.cs
- AppSettingsExpressionEditor.cs
- ComponentSerializationService.cs
- OutputCacheProfile.cs
- NavigationPropertyAccessor.cs
- ServiceRouteHandler.cs
- OdbcConnectionHandle.cs
- DefaultPropertyAttribute.cs
- MessageQueueAccessControlEntry.cs
- WeakHashtable.cs
- MarshalByValueComponent.cs
- XNameTypeConverter.cs
- XmlSchemaComplexContentExtension.cs
- SessionEndingCancelEventArgs.cs
- PublishLicense.cs
- PathFigureCollectionConverter.cs
- Hashtable.cs
- XmlException.cs
- DbFunctionCommandTree.cs
- ListDictionaryInternal.cs
- InfoCardService.cs
- MergeFilterQuery.cs
- EntityTypeBase.cs
- Funcletizer.cs
- DetailsViewPageEventArgs.cs
- InputDevice.cs
- Decorator.cs
- RowVisual.cs
- ContractMapping.cs
- EmptyReadOnlyDictionaryInternal.cs
- CompilerErrorCollection.cs
- ComEventsSink.cs
- ExpressionList.cs