我在Visual Studio 2010中的Windows Workflow 4.0項目中創建FlowChart。我添加了一個FlowSwitch
,其中In Argument
變量的表達式被傳入Activity
。我可以調試並看到值正確傳遞,但是我的FlowSwitch根本不會切換到定義爲傳入值的情況。我已將FlowSwitch定義爲數字值,並將其作爲In Argument
應該等於。有什麼我失蹤?Windows Workflow 4.0 FlowSwitch不工作
回答
FlowSwitch此時適用於字符串值。嘗試將InArgument轉換爲字符串。
例XAML:
<p:Activity mc:Ignorable="" x:Class="WorkflowConsoleApplication2.Flowchart1" xmlns="http://schemas.microsoft.com/netfx/2009/xaml/activities/design" xmlns:__Flowchart1="clr-namespace:WorkflowConsoleApplication2;" xmlns:av="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:p="http://schemas.microsoft.com/netfx/2009/xaml/activities" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:sad="clr-namespace:System.Activities.Debugger;assembly=System.Activities" xmlns:scg="clr-namespace:System.Collections.Generic;assembly=mscorlib" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<p:Flowchart StartNode="{x:Reference __ReferenceID0}" sad:XamlDebuggerXmlReader.FileName="c:\temp\WorkflowConsoleApplication2\WorkflowConsoleApplication2\Flowchart1.xaml">
<WorkflowViewStateService.ViewState>
<scg:Dictionary x:TypeArguments="x:String, s:Object">
<av:Point x:Key="ShapeLocation">275,10</av:Point>
<av:Size x:Key="ShapeSize">50,50</av:Size>
<av:PointCollection x:Key="ConnectorLocation">300,60 300,110</av:PointCollection>
</scg:Dictionary>
</WorkflowViewStateService.ViewState>
<p:FlowSwitch x:Name="__ReferenceID0" Expression="["2"]">
<p:FlowSwitch.Default>
<p:FlowStep x:Name="__ReferenceID1">
<WorkflowViewStateService.ViewState>
<scg:Dictionary x:TypeArguments="x:String, s:Object">
<av:Point x:Key="ShapeLocation">235,293</av:Point>
<av:Size x:Key="ShapeSize">200,34</av:Size>
</scg:Dictionary>
</WorkflowViewStateService.ViewState>
<p:WriteLine>["Default"]</p:WriteLine>
</p:FlowStep>
</p:FlowSwitch.Default>
<WorkflowViewStateService.ViewState>
<scg:Dictionary x:TypeArguments="x:String, s:Object">
<av:Point x:Key="ShapeLocation">270,110</av:Point>
<av:Size x:Key="ShapeSize">60,60</av:Size>
<av:PointCollection x:Key="Default">300,170 285,170 285,283 335,283 335,293</av:PointCollection>
<av:PointCollection x:Key="1Connector">300,170 300,205 330,205</av:PointCollection>
<av:PointCollection x:Key="2Connector">300,170 300,180 290,180 290,270 340,270</av:PointCollection>
</scg:Dictionary>
</WorkflowViewStateService.ViewState>
<p:FlowStep x:Name="__ReferenceID2">
<x:Key>
<x:String>1</x:String>
</x:Key>
<WorkflowViewStateService.ViewState>
<scg:Dictionary x:TypeArguments="x:String, s:Object">
<av:Point x:Key="ShapeLocation">330,188</av:Point>
<av:Size x:Key="ShapeSize">200,34</av:Size>
</scg:Dictionary>
</WorkflowViewStateService.ViewState>
<p:WriteLine>["Its 1 "]</p:WriteLine>
</p:FlowStep>
<p:FlowStep x:Name="__ReferenceID3">
<x:Key>
<x:String>2</x:String>
</x:Key>
<WorkflowViewStateService.ViewState>
<scg:Dictionary x:TypeArguments="x:String, s:Object">
<av:Point x:Key="ShapeLocation">340,253</av:Point>
<av:Size x:Key="ShapeSize">200,34</av:Size>
</scg:Dictionary>
</WorkflowViewStateService.ViewState>
<p:WriteLine>["Its 2"]</p:WriteLine>
</p:FlowStep>
</p:FlowSwitch>
<x:Reference>__ReferenceID2</x:Reference>
<x:Reference>__ReferenceID3</x:Reference>
<x:Reference>__ReferenceID1</x:Reference>
</p:Flowchart>
</p:Activity>
我試過Argument.ToString,甚至硬編碼一個字符串「15000」,但它仍然無法正常工作。有什麼想法嗎? – 2009-10-13 19:31:28
它適用於我:-)在FlowSwitch表達式中,我輸入了「2」(包括引號)或2.ToString()。在FlowStep中,我輸入了2(沒有引號,因爲這是一個字符串,不是表達式) 如果在原文中添加了我使用的XAML – Maurice 2009-10-13 20:09:54
今天有beta 2了。不再是問題,但我非常感謝你的努力。 – 2009-10-19 19:26:13
- 1. Windows Workflow Foundation 4.0和Persistence
- 2. Windows Workflow Foundation 4.0和跟蹤
- 3. Windows Workflow Foundation 4.0和Persistence
- 4. Windows Workflow Foundation 4.0連接器
- 5. Windows Workflow Foundation 4.0和跟蹤
- 6. Windows Workflow 4.0中特定於文化的XAML工作流程
- 7. Windows Workflow Persistence數據(VS 2010 RC/.NET 4.0)
- 8. Windows Workflow Foundation 4.0中的附加屬性?
- 9. Workflow 4.0中的InvokeMethod
- 10. Windows Workflow 4.0活動未添加到工具箱
- 11. 是否有用於Windows Workflow 4.0的任何代碼covergae工具?
- 12. Workflow Foundation的4.0負荷工作流程的參數
- 13. Windows Workflow Foundation NullReferenceException
- 14. Workflow 4.0中的多線程
- 15. Windows Workflow Foundation 4.0選擇包含延遲活動的活動
- 16. Windows Workflow Foundation 4.0和WCF Web服務故障(soap故障)
- 17. 用於簡單業務流程的Windows Workflow 4.0?
- 18. Windows Workflow Foundation 4.0突破ForEach <T>活動
- 19. Workflow Foundation:設計器不工作
- 20. 替代Windows Workflow Foundation
- 21. Silverlight和Windows Workflow Foundation
- 22. Windows Workflow Foundation InvokeMethod類
- 23. Silverlight和Windows Workflow Foundation
- 24. Windows工作流4.0持久性
- 25. Windows工作流4.0 InstancePersistenceCommand錯誤
- 26. 讓Microsoft在.NET 4.0中重寫了Windows Workflow Foundation?
- 27. Workflow Foundation的4.0請求 - 響應
- 28. Windows Workflow 4 Set Properies?
- 29. Windows服務與Windows Workflow Foundation?
- 30. RichFaces 4.0皮膚不工作
它吮吸時,測試軟件都有漏洞,哎? – leppie 2009-10-13 18:10:58
特別是對於如此基本的東西,它的功能集。我試圖測試FlowCharts與常規活動,它只是不工作.. – 2009-10-13 18:12:41
這甚至不使用硬編碼值。 – 2009-10-13 18:16:39