Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / RunTime / ContextActivityUtils.cs / 1305376 / ContextActivityUtils.cs
#pragma warning disable 1634, 1691 using System; using System.Globalization; using System.Collections; using System.Collections.Generic; using System.Collections.Specialized; using System.Collections.ObjectModel; using System.ComponentModel.Design.Serialization; using System.Diagnostics; using System.IO; using System.Reflection; using System.Text; using System.Threading; using System.Xml; using System.Transactions; using SES = System.EnterpriseServices; using System.Workflow.ComponentModel; using System.Workflow.Runtime.Hosting; namespace System.Workflow.Runtime { #region ContextActivityUtils Class internal static class ContextActivityUtils { internal static int ContextId(Activity activity) { return ((ActivityExecutionContextInfo)ContextActivity(activity).GetValue(Activity.ActivityExecutionContextInfoProperty)).ContextId; } internal static Activity ContextActivity(Activity activity) { Activity contextActivity = activity; while (contextActivity != null && contextActivity.GetValue(Activity.ActivityExecutionContextInfoProperty) == null) contextActivity = contextActivity.Parent; return contextActivity; } internal static Activity ParentContextActivity(Activity activity) { Activity contextActivity = ContextActivity(activity); ActivityExecutionContextInfo executionContextInfo = (ActivityExecutionContextInfo)contextActivity.GetValue(Activity.ActivityExecutionContextInfoProperty); if (executionContextInfo.ParentContextId == -1) return null; return RetrieveWorkflowExecutor(activity).GetContextActivityForId(executionContextInfo.ParentContextId); } internal static IWorkflowCoreRuntime RetrieveWorkflowExecutor(Activity activity) { // fetch workflow executor IWorkflowCoreRuntime workflowExecutor = null; Activity rootActivity = activity; while (rootActivity != null && rootActivity.Parent != null) rootActivity = rootActivity.Parent; if (rootActivity != null) workflowExecutor = (IWorkflowCoreRuntime)rootActivity.GetValue(WorkflowExecutor.WorkflowExecutorProperty); return workflowExecutor; } internal static Activity RootContextActivity(Activity activity) { return RetrieveWorkflowExecutor(activity).RootActivity; } } #endregion } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TextEditorDragDrop.cs
- XmlAttributeAttribute.cs
- DecimalAnimationBase.cs
- LowerCaseStringConverter.cs
- DefaultAsyncDataDispatcher.cs
- WeakReferenceEnumerator.cs
- PenLineJoinValidation.cs
- SessionPageStatePersister.cs
- ScrollProviderWrapper.cs
- DocumentXPathNavigator.cs
- FileUpload.cs
- IPEndPoint.cs
- XmlEnumAttribute.cs
- Dump.cs
- IImplicitResourceProvider.cs
- XNodeValidator.cs
- UIElementParagraph.cs
- Converter.cs
- HebrewCalendar.cs
- TraceLog.cs
- TypefaceMetricsCache.cs
- MailWriter.cs
- DateTimeUtil.cs
- RegexStringValidator.cs
- TextServicesManager.cs
- ToolStripSeparatorRenderEventArgs.cs
- ListCollectionView.cs
- EntityViewGenerationAttribute.cs
- PixelShader.cs
- NamespaceQuery.cs
- HttpHandlerAction.cs
- PromptEventArgs.cs
- OutputCacheProfile.cs
- GridViewColumnHeader.cs
- SafeWaitHandle.cs
- DataGrid.cs
- NamedObject.cs
- ChtmlCalendarAdapter.cs
- Point4DValueSerializer.cs
- CacheVirtualItemsEvent.cs
- ValidationSummary.cs
- RenderDataDrawingContext.cs
- SmtpTransport.cs
- DBCSCodePageEncoding.cs
- Calendar.cs
- Repeater.cs
- EventArgs.cs
- DbConnectionPoolOptions.cs
- XamlTreeBuilderBamlRecordWriter.cs
- DispatcherExceptionEventArgs.cs
- UrlPropertyAttribute.cs
- AnchorEditor.cs
- MiniParameterInfo.cs
- UnsafeNativeMethodsTablet.cs
- DateTimeParse.cs
- AsyncOperation.cs
- Axis.cs
- EntityTypeBase.cs
- DBConnectionString.cs
- RIPEMD160.cs
- OleDbEnumerator.cs
- TransactionContextValidator.cs
- TreeNodeBinding.cs
- DataServices.cs
- WebPartVerb.cs
- PersistenceTypeAttribute.cs
- CachingHintValidation.cs
- RectangleF.cs
- NullableConverter.cs
- sqlstateclientmanager.cs
- TextClipboardData.cs
- EventLogHandle.cs
- MonitoringDescriptionAttribute.cs
- UdpDiscoveryEndpoint.cs
- DocumentViewer.cs
- ArgIterator.cs
- ItemAutomationPeer.cs
- XsdValidatingReader.cs
- SystemInfo.cs
- PointCollectionConverter.cs
- X509CertificateChain.cs
- ColorContext.cs
- CompilationLock.cs
- XmlNodeWriter.cs
- WindowsFormsLinkLabel.cs
- CryptoHelper.cs
- isolationinterop.cs
- MeasurementDCInfo.cs
- ModifierKeysValueSerializer.cs
- DoubleAnimationClockResource.cs
- ServiceModelEnumValidator.cs
- ButtonBaseAutomationPeer.cs
- WorkflowServiceHostFactory.cs
- DefaultTextStore.cs
- EndpointInfoCollection.cs
- CodeTypeReference.cs
- Part.cs
- MatrixStack.cs
- LicenseContext.cs
- AsyncContentLoadedEventArgs.cs