static void ProcessOnce(int i) { var wfApp = WorkFlowHelper .CreateApplication ( "a:" + (i % 4).ToString() , () => { return (_xaml); } ); wfApp.Completed = (e) => { //Console.WriteLine(e.InstanceId); }; wfApp.Aborted = (e) => { }; //wfApp.OnUnhandledException = (e) => //{ // Console.WriteLine(e.UnhandledException.ToString()); // return UnhandledExceptionAction.Terminate; //}; //wfApp.Idle = (e) => //{ // idleEvent.Set(); //}; var config = @"{ ""WorkflowInstanceQuery"" : [{ ""States"": [ ""*"" ] , ""QueryAnnotations"": {} }] , ""ActivityStateQuery"" : [{ ""ActivityName"": ""*"" , ""Arguments"": [] , ""Variables"": [] , ""States"": [""*""] , ""QueryAnnotations"": {} }] , ""CustomTrackingQuery"": [{ ""Name"": ""*"", ""ActivityName"": ""*"", ""QueryAnnotations"": {} }] , ""FaultPropagationQuery"": [{ ""FaultHandlerActivityName"": ""*"", ""FaultSourceActivityName"": ""*"", ""QueryAnnotations"": {} }], ""BookmarkResumptionQuery"": [{ ""Name"": ""*"", ""QueryAnnotations"": {} }], ""ActivityScheduledQuery"": [{ ""ActivityName"": ""*"", ""ChildActivityName"": ""*"", ""QueryAnnotations"": {} }], ""CancelRequestedQuery"": [{ ""ActivityName"": ""*"", ""ChildActivityName"": ""*"", ""QueryAnnotations"": {} }] }"; var trackingProfile = WorkFlowHelper .GetTrackingProfileFromJson ( config , true ); var etwTrackingParticipant = new EtwTrackingParticipant(); etwTrackingParticipant.TrackingProfile = trackingProfile; var commonTrackingParticipant = new CommonTrackingParticipant() { TrackingProfile = trackingProfile , OnTrackingRecordReceived = (x, y) => { //Console.WriteLine("{1}{0}{2}", ",", x, y); return(true); } }; wfApp .Extensions .Add ( etwTrackingParticipant ); wfApp .Extensions .Add ( commonTrackingParticipant ); wfApp.Run(); // Loop until the workflow completes. //WaitHandle[] handles = new WaitHandle[] { syncEvent, idleEvent }; //while (WaitHandle.WaitAny(handles) != 0) //{ // // Gather the user input and resume the bookmark. // bool validEntry = false; // while (!validEntry) // { // int Guess; // if (!int.TryParse(Console.ReadLine(), out Guess)) // { // Console.WriteLine("Please enter an integer."); // } // else // { // validEntry = true; // wfApp.ResumeBookmark("EnterGuess", Guess); // } // } //} }
static void Main() { DynamicJson dj = DynamicJson.Parse("{\"F1\":10}"); var xx = dj["F1"].GetValue <int>(); var inputs = new Dictionary <string, object>() { { "Inputs", dj } }; var wfApp = WorkFlowHelper .CreateApplication ( "aa" , () => { return (_xaml); } , inputs ); wfApp.Completed = (e) => { //int Turns = Convert.ToInt32(e.Outputs["Turns"]); //Console.WriteLine("Congratulations, you guessed the number in {0} turns.", Turns); //syncEvent.Set(); }; wfApp.Aborted = (e) => { Console.WriteLine(e.Reason); //syncEvent.Set(); }; wfApp.OnUnhandledException = (e) => { Console.WriteLine(e.UnhandledException.ToString()); return(UnhandledExceptionAction.Terminate); }; wfApp.Idle = (e) => { //idleEvent.Set(); }; wfApp.Run(); Console.ReadLine(); return; var config = @"{ ""WorkflowInstanceQuery"" : [{ ""States"": [ ""*"" ] , ""QueryAnnotations"": {} }] , ""ActivityStateQuery"" : [{ ""ActivityName"": ""*"" , ""Arguments"": [] , ""Variables"": [] , ""States"": [""*""] , ""QueryAnnotations"": {} }] , ""CustomTrackingQuery"": [{ ""Name"": ""*"", ""ActivityName"": ""*"", ""QueryAnnotations"": {} }] , ""FaultPropagationQuery"": [{ ""FaultHandlerActivityName"": ""*"", ""FaultSourceActivityName"": ""*"", ""QueryAnnotations"": {} }], ""BookmarkResumptionQuery"": [{ ""Name"": ""*"", ""QueryAnnotations"": {} }], ""ActivityScheduledQuery"": [{ ""ActivityName"": ""*"", ""ChildActivityName"": ""*"", ""QueryAnnotations"": {} }], ""CancelRequestedQuery"": [{ ""ActivityName"": ""*"", ""ChildActivityName"": ""*"", ""QueryAnnotations"": {} }] }"; var trackingProfile = WorkFlowHelper .GetTrackingProfileFromJson ( config , true ); var etwTrackingParticipant = new EtwTrackingParticipant(); etwTrackingParticipant.TrackingProfile = trackingProfile; var commonTrackingParticipant = new CommonTrackingParticipant() { TrackingProfile = trackingProfile , OnTrackingRecordReceived = (x, y) => { //Console.WriteLine("{1}{0}{2}", ",", x, y); return(true); } }; wfApp .Extensions .Add ( etwTrackingParticipant ); wfApp .Extensions .Add ( commonTrackingParticipant ); wfApp.Run(); Console.ReadLine(); //// Loop until the workflow completes. //WaitHandle[] handles = new WaitHandle[] { syncEvent, idleEvent }; //while (WaitHandle.WaitAny(handles) != 0) //{ // // Gather the user input and resume the bookmark. // bool validEntry = false; // while (!validEntry) // { // int Guess; // if (!int.TryParse(Console.ReadLine(), out Guess)) // { // Console.WriteLine("Please enter an integer."); // } // else // { // validEntry = true; // wfApp.ResumeBookmark("EnterGuess", Guess); // } // } //} }