當前位置: 首頁>>代碼示例>>C#>>正文


C# ActivityExecutor.EndAssociateKeys方法代碼示例

本文整理匯總了C#中ActivityExecutor.EndAssociateKeys方法的典型用法代碼示例。如果您正苦於以下問題:C# ActivityExecutor.EndAssociateKeys方法的具體用法?C# ActivityExecutor.EndAssociateKeys怎麽用?C# ActivityExecutor.EndAssociateKeys使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在ActivityExecutor的用法示例。


在下文中一共展示了ActivityExecutor.EndAssociateKeys方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。

示例1: FlushBookmarkScopeKeys

 public bool FlushBookmarkScopeKeys(ActivityExecutor executor)
 {
     try
     {
         ICollection<InstanceKey> keysToDisassociate = executor.BookmarkScopeManager.GetKeysToDisassociate();
         if ((keysToDisassociate != null) && (keysToDisassociate.Count > 0))
         {
             executor.DisassociateKeys(keysToDisassociate);
         }
         ICollection<InstanceKey> keysToAssociate = executor.BookmarkScopeManager.GetKeysToAssociate();
         if ((keysToAssociate != null) && (keysToAssociate.Count > 0))
         {
             if (associateCallback == null)
             {
                 associateCallback = Fx.ThunkCallback(new AsyncCallback(System.Activities.Runtime.WorkItem.OnAssociateComplete));
             }
             IAsyncResult result = executor.BeginAssociateKeys(keysToAssociate, associateCallback, new CallbackData(executor, this));
             if (result.CompletedSynchronously)
             {
                 executor.EndAssociateKeys(result);
             }
             else
             {
                 return false;
             }
         }
     }
     catch (Exception exception)
     {
         if (Fx.IsFatal(exception))
         {
             throw;
         }
         this.workflowAbortException = exception;
     }
     return true;
 }
開發者ID:pritesh-mandowara-sp,項目名稱:DecompliedDotNetLibraries,代碼行數:37,代碼來源:WorkItem.cs

示例2: FlushBookmarkScopeKeys

        public bool FlushBookmarkScopeKeys(ActivityExecutor executor)
        {
            Fx.Assert(executor.BookmarkScopeManager.HasKeysToUpdate, "We should not have been called if we don't have pending keys.");

            try
            {
                // disassociation is local-only so we don't need to yield 
                ICollection<InstanceKey> keysToDisassociate = executor.BookmarkScopeManager.GetKeysToDisassociate();
                if (keysToDisassociate != null && keysToDisassociate.Count > 0)
                {
                    executor.DisassociateKeys(keysToDisassociate);
                }

                // if we have keys to associate, provide them for an asynchronous association
                ICollection<InstanceKey> keysToAssociate = executor.BookmarkScopeManager.GetKeysToAssociate();

                // It could be that we only had keys to Disassociate. We should only do BeginAssociateKeys
                // if we have keysToAssociate.
                if (keysToAssociate != null && keysToAssociate.Count > 0)
                {
                    if (associateCallback == null)
                    {
                        associateCallback = Fx.ThunkCallback(new AsyncCallback(OnAssociateComplete));
                    }

                    IAsyncResult result = executor.BeginAssociateKeys(keysToAssociate, associateCallback, new CallbackData(executor, this));
                    if (result.CompletedSynchronously)
                    {
                        executor.EndAssociateKeys(result);
                    }
                    else
                    {
                        return false;
                    }
                }
            }
            catch (Exception e)
            {
                if (Fx.IsFatal(e))
                {
                    throw;
                }

                this.workflowAbortException = e;
            }

            return true;
        }
開發者ID:krytht,項目名稱:DotNetReferenceSource,代碼行數:48,代碼來源:WorkItem.cs


注:本文中的ActivityExecutor.EndAssociateKeys方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。