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
- WebServiceFaultDesigner.cs
- GlyphCache.cs
- ExpressionVisitor.cs
- DesignerListAdapter.cs
- ErrorEventArgs.cs
- Itemizer.cs
- WebServicesSection.cs
- ChtmlCalendarAdapter.cs
- Win32Exception.cs
- BehaviorService.cs
- DrawingImage.cs
- EtwTrace.cs
- TimelineGroup.cs
- WorkflowServiceOperationListItem.cs
- TextRangeBase.cs
- ConfigurationValues.cs
- _CookieModule.cs
- DataGridViewRowCollection.cs
- KeyValuePair.cs
- RoutingConfiguration.cs
- Substitution.cs
- CFGGrammar.cs
- ScriptRegistrationManager.cs
- DbCommandTree.cs
- CalendarDesigner.cs
- TrayIconDesigner.cs
- assemblycache.cs
- EmptyControlCollection.cs
- DocumentApplicationJournalEntry.cs
- returneventsaver.cs
- DataSourceSelectArguments.cs
- CalendarItem.cs
- CharConverter.cs
- LineGeometry.cs
- TreeNode.cs
- DependencyStoreSurrogate.cs
- CounterCreationData.cs
- TripleDESCryptoServiceProvider.cs
- SmtpReplyReaderFactory.cs
- PackWebRequestFactory.cs
- AutomationElement.cs
- DoWorkEventArgs.cs
- JsonXmlDataContract.cs
- LightweightCodeGenerator.cs
- ChangeProcessor.cs
- TypeGeneratedEventArgs.cs
- SecureConversationDriver.cs
- VariantWrapper.cs
- ListViewGroup.cs
- ColorConverter.cs
- MatrixIndependentAnimationStorage.cs
- TimeoutConverter.cs
- Camera.cs
- SettingsPropertyValue.cs
- ClientApiGenerator.cs
- TreeViewEvent.cs
- RelationshipConverter.cs
- Utils.cs
- Documentation.cs
- CircleEase.cs
- AlignmentXValidation.cs
- RegistryDataKey.cs
- CompiledIdentityConstraint.cs
- StreamWithDictionary.cs
- DataGridViewAutoSizeColumnsModeEventArgs.cs
- WebUtil.cs
- InheritedPropertyChangedEventArgs.cs
- RemoteWebConfigurationHostStream.cs
- NonParentingControl.cs
- ProxyAttribute.cs
- DataProviderNameConverter.cs
- ProjectionAnalyzer.cs
- CodeMemberMethod.cs
- ConfigurationProviderException.cs
- PeerChannelFactory.cs
- SerializerDescriptor.cs
- CategoryAttribute.cs
- ConnectionStringSettingsCollection.cs
- HttpResponse.cs
- ExpressionDumper.cs
- cryptoapiTransform.cs
- PasswordPropertyTextAttribute.cs
- FreezableDefaultValueFactory.cs
- SchemaImporter.cs
- XmlConverter.cs
- ObjectConverter.cs
- ActionMismatchAddressingException.cs
- ScriptDescriptor.cs
- EntitySqlQueryCacheEntry.cs
- WebPartsPersonalization.cs
- PackageDigitalSignature.cs
- ProjectionCamera.cs
- GridViewRowPresenter.cs
- CodeCompiler.cs
- SiteMapDataSource.cs
- CodeDOMProvider.cs
- ExpressionConverter.cs
- StaticFileHandler.cs
- Transform3DCollection.cs
- FormViewActionList.cs