Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.Activities / System / Activities / DurableInstancing / LoadWorkflowByInstanceKeyCommand.cs / 1305376 / LoadWorkflowByInstanceKeyCommand.cs
//---------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------- namespace System.Activities.DurableInstancing { using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Runtime; using System.Runtime.DurableInstancing; using System.Xml.Linq; [Fx.Tag.XamlVisible(false)] public sealed class LoadWorkflowByInstanceKeyCommand : InstancePersistenceCommand { Dictionary> keysToAssociate; public LoadWorkflowByInstanceKeyCommand() : base(InstancePersistence.ActivitiesCommandNamespace.GetName("LoadWorkflowByInstanceKey")) { } public bool AcceptUninitializedInstance { get; set; } public Guid LookupInstanceKey { get; set; } public Guid AssociateInstanceKeyToInstanceId { get; set; } public IDictionary > InstanceKeysToAssociate { get { if (this.keysToAssociate == null) { this.keysToAssociate = new Dictionary >(); } return this.keysToAssociate; } } protected internal override bool IsTransactionEnlistmentOptional { get { return (this.keysToAssociate == null || this.keysToAssociate.Count == 0) && AssociateInstanceKeyToInstanceId == Guid.Empty; } } protected internal override bool AutomaticallyAcquiringLock { get { return true; } } protected internal override void Validate(InstanceView view) { if (!view.IsBoundToInstanceOwner) { throw FxTrace.Exception.AsError(new InvalidOperationException(SRCore.OwnerRequired)); } if (view.IsBoundToInstance) { throw FxTrace.Exception.AsError(new InvalidOperationException(SRCore.AlreadyBoundToInstance)); } if (LookupInstanceKey == Guid.Empty) { throw FxTrace.Exception.AsError(new InvalidOperationException(SRCore.LoadOpKeyMustBeValid)); } if (AssociateInstanceKeyToInstanceId == Guid.Empty) { if (InstanceKeysToAssociate.ContainsKey(LookupInstanceKey)) { throw FxTrace.Exception.AsError(new InvalidOperationException(SRCore.LoadOpAssociateKeysCannotContainLookupKey)); } } else { if (!AcceptUninitializedInstance) { throw FxTrace.Exception.AsError(new InvalidOperationException(SRCore.LoadOpFreeKeyRequiresAcceptUninitialized)); } } if (this.keysToAssociate != null) { foreach (KeyValuePair > key in this.keysToAssociate) { InstancePersistence.ValidatePropertyBag(key.Value); } } } } } // 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
- WsatTransactionHeader.cs
- SecurityChannelListener.cs
- CapabilitiesPattern.cs
- ItemCheckEvent.cs
- ImpersonationContext.cs
- x509store.cs
- StylusCaptureWithinProperty.cs
- InvalidFilterCriteriaException.cs
- PrimitiveXmlSerializers.cs
- TextChangedEventArgs.cs
- GroupBoxRenderer.cs
- ProcessHost.cs
- BulletChrome.cs
- UrlMappingsSection.cs
- _WinHttpWebProxyDataBuilder.cs
- ColumnCollectionEditor.cs
- FontNamesConverter.cs
- ObjectTag.cs
- CompilationUtil.cs
- UmAlQuraCalendar.cs
- UIntPtr.cs
- WindowsSspiNegotiation.cs
- PostBackOptions.cs
- MimeFormReflector.cs
- BuildProvider.cs
- InputLangChangeEvent.cs
- Unit.cs
- StringPropertyBuilder.cs
- BitmapSizeOptions.cs
- SqlMethodAttribute.cs
- CodeSubDirectory.cs
- ThreadSafeList.cs
- DtcInterfaces.cs
- Configuration.cs
- DataSourceListEditor.cs
- TableItemProviderWrapper.cs
- TaiwanLunisolarCalendar.cs
- CounterSampleCalculator.cs
- Schema.cs
- DbTransaction.cs
- EncryptedPackageFilter.cs
- BufferedStream2.cs
- Behavior.cs
- SoapExtensionTypeElement.cs
- SafeWaitHandle.cs
- ConstructorExpr.cs
- WindowsToolbar.cs
- RegisteredArrayDeclaration.cs
- iisPickupDirectory.cs
- TagMapInfo.cs
- _TimerThread.cs
- DrawListViewColumnHeaderEventArgs.cs
- TypeConverterAttribute.cs
- LayoutManager.cs
- XmlSchemaAttributeGroupRef.cs
- UriTemplateClientFormatter.cs
- XamlTypeMapperSchemaContext.cs
- RegionInfo.cs
- FormViewDeleteEventArgs.cs
- Rules.cs
- TextTreeFixupNode.cs
- DocumentPaginator.cs
- ConfigurationValidatorBase.cs
- HierarchicalDataBoundControl.cs
- DetailsViewRowCollection.cs
- ContractComponent.cs
- PickBranch.cs
- StorageScalarPropertyMapping.cs
- RSAPKCS1SignatureFormatter.cs
- FormViewModeEventArgs.cs
- QueryOutputWriter.cs
- DiscoveryDocumentSearchPattern.cs
- ContourSegment.cs
- Html32TextWriter.cs
- XmlHelper.cs
- EntityCommandDefinition.cs
- IImplicitResourceProvider.cs
- PieceNameHelper.cs
- StringExpressionSet.cs
- DbModificationCommandTree.cs
- OutputScopeManager.cs
- CoreSwitches.cs
- EditCommandColumn.cs
- ItemCollection.cs
- PrintPreviewDialog.cs
- SequenceRangeCollection.cs
- BamlLocalizer.cs
- _OverlappedAsyncResult.cs
- XmlRawWriterWrapper.cs
- ComponentGlyph.cs
- CodeObjectCreateExpression.cs
- ByteArrayHelperWithString.cs
- DataTableNewRowEvent.cs
- IDReferencePropertyAttribute.cs
- WSHttpSecurity.cs
- MailDefinition.cs
- unsafenativemethodstextservices.cs
- TakeOrSkipQueryOperator.cs
- DynamicILGenerator.cs
- ToolStripStatusLabel.cs