對於一個簡單的原型,我必須顯示一個工作流文件,並顯示我們實際上在哪一步。WorkflowInspectionServices在Workflow Foundation中拋出XamlObjectWriterException
我發現了一個樣本這裏:http://msdn.microsoft.com/en-us/library/ee624139.aspx
這確實幾乎我需要什麼。
在本示例中,所有操作都不會等待另一個操作。所以我創造了自己一些非常模擬活動:
public class WaitForNextCall :NativeActivity
{
public const String WaitBookmark = "WaitingStep";
#region Overrides of NativeActivity
/// <summary>
/// When implemented in a derived class, runs the activity’s execution logic.
/// </summary>
/// <param name="context">The execution context in which the activity executes.</param>
protected override void Execute(NativeActivityContext context)
{
context.CreateBookmark(WaitBookmark);
}
protected override bool CanInduceIdle
{
get
{
return true;
}
}
#endregion
}
這似乎工作。由於我是在代碼直接創建我的工作流程:
return new Sequence()
{
Activities =
{
new WaitForNextCall(){DisplayName = "Step one"},
new WaitForNextCall(){DisplayName = "Step Two"},
new WaitForNextCall(){DisplayName = "Step Three"},
new WaitForNextCall(){DisplayName = "Step Four"}
}
};
與唯一的問題是,我只看到在工作流設計「序列」元素。
所以我創建了exactily描述同一件事XAML文件,我加載它是這樣的:
return ActivityXamlServices.Load("Workflows/WorkflowSample.xaml") as DynamicActivity;
但後來我得到這個異常:
System.Xaml.XamlObjectWriterException occurred
Message=Impossible de créer le type inconnu '{clr-MyTestNameSpace.UserInterface.WorkflowItems}WaitForNextCall'.
Source=System.Xaml
LineNumber=0
LinePosition=0
StackTrace:
à System.Xaml.XamlObjectWriter.WriteStartObject(XamlType xamlType)
à System.Xaml.XamlWriter.WriteNode(XamlReader reader)
[...]
我雙重檢查,該文件存在(看起來,當沒有正確指定文件時還有另一個錯誤消息)。但它找不到我的「WaitFornextCall」類,它只用在下面幾行。
我有點desesperate,我想了解如何工作流程的基礎,但它是一個有點硬,現在:(
任何意見將受到歡迎
編輯: 我想這讀取文件,我沒有在我的構造函數中的任何異常,但我不知道爲什麼,有些庫我使用(ActiPro)似乎不負載後工作了:
XamlReader reader = new XamlXmlReader("Workflows/WorkflowSample.xaml", new XamlXmlReaderSettings(){LocalAssembly = System.Reflection.Assembly.GetExecutingAssembly()});
return ActivityXamlServices.Load(reader);
不,我創建了一個類似於創建應該加載示例的代碼部分30分鐘後的東西: – J4N 2011-04-12 19:24:42
@ J4N:你刪除它,重建並重新創建它嗎?假設總是造成這種錯誤的原因。 – Will 2011-04-12 19:30:32
是的,我剛剛做了它,它不會改變任何東西 – J4N 2011-04-13 05:38:33