2013-04-05 93 views
2

作爲工作流的新手,我創建了一個工作流(在VS2010工作流設計器中),其中包含一個具有書寫線活動的序列。我正在嘗試爲工作流創建參數,因此我在參數窗格中創建了2個參數,而不是在活動級別對它們進行任何操作。 (值得注意的是,我還沒有掌握如何在工作流中使用參數)。但是,我保存了工作流程,而工作流程未顯示任何可見錯誤(帶有excalmation標記的紅色圓圈)。下一次我打開工作流程時出現錯誤:如何從文檔中恢復:工作流設計器遇到文檔問題

工作流設計器遇到文檔問題。 請檢查文檔中的無效內容,名稱空間,引用或引用循環。

這似乎是最終的,因爲我無法訪問我的原始工作流程來糾正錯誤(無論它們是什麼)。當我點擊細節向下箭頭時,我看到:無法在類型_8684中找到成員'a'。

a是我在工作流程中使用的兩個int32參數之一,但我從未在任何活動中使用過。

我將不勝感激任何幫助。提前致謝。

回答

1

看來你正試圖重新託管你的工作流設計器,它不會爲你生成正確的XAML。

如果工作流設計器實例直接加載容器活動(序列,流程圖等)而不是首先使用ActivityBuilder,則通常會出現錯誤Could not find member <mname> in type <tname>

如果您已經在使用ActivityBuilder,那麼您可能會錯過爲其提供根活動命名空間。添加System.Activities.Presentation.WorkflowDesigner正確的方法是:

this.workflowDesigner = new WorkflowDesigner(); 
this.workflowDesigner.Load(new ActivityBuilder { Implementation = new Sequence(), 
               Name = "RootNamespace.RootActivity" }); 

隨着Name設置不當WF設計師將停止使用隨機類型(如你的情況_8684)並生成保存/系列化正確的XAML。這應該可以幫助您擺脫名稱空間錯誤。