Windows Workflow Foundation ForumDiscuss how to develop .NET applications using workflow functionality provided by Windows Workflow Foundation.© 2009 Microsoft Corporation. All rights reserved.Wed, 25 Nov 2009 22:25:25 Z730ff620-bd6e-43a8-a744-0a9b5736392fhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/760f1040-8b02-481f-b859-203878c5e88ehttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/760f1040-8b02-481f-b859-203878c5e88eMatthew Bhttp://social.msdn.microsoft.com/Profile/en-US/?user=Matthew%20BBind To Properties Of DependencyProperties?I've create a Customer dependecy property for one of my activities which gives me the cool dialog for selecting an object to bind to when I'm in the workflow designer. What about situations when I don't want to bind the whole object? What if I wanted to compose the customer by binding from multiple sources (i.e. bind the customer ID to an Integer in one place, the Zipcode from another, etc.) ?<br/><br/>I know I could create a code activity to create the object but my whole goal is to not have any code for binding. Has anyone else run into this?<br/><br/>TIA,<br/><br/>MatthewWed, 25 Nov 2009 22:25:24 Z2009-11-25T22:25:24Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/862a21d8-495e-489a-b3ca-6453a927195bhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/862a21d8-495e-489a-b3ca-6453a927195bToolmakerStevehttp://social.msdn.microsoft.com/Profile/en-US/?user=ToolmakerSteveMicrosoft people - are you aware this forum isn't accessible from main Developer Center WWF page?From .Net Framework Developer Center, click on &quot;Windows Workflow Foundation&quot;, and one ends up at this page:<br/><a class=EyebrowLink title=".NET Framework Developer Center" href="http://msdn.microsoft.com/en-us/netframework/aa496123.aspx"><span style="color:#0066dd">.NET Framework Developer Center</span></a><span> &gt; </span><a class=EyebrowLink title=Home href="http://msdn.microsoft.com/en-us/netframework/aa496123.aspx"><span style="color:#0066dd">Home</span></a><span> &gt; </span><a class=EyebrowLink title=Technologies href="http://msdn.microsoft.com/en-us/netframework/bb513602.aspx"><span style="color:#0066dd">Technologies</span></a><span> &gt; </span><span class=EyebrowElement><strong> Windows Workflow Foundation</strong></span><br/><a href="http://msdn.microsoft.com/en-us/netframework/aa663328.aspx">http://msdn.microsoft.com/en-us/netframework/aa663328.aspx</a><br/><br/>There, click on Forums, and one ends up at this page:<br/> <div> <div class=bread><a href="http://msdn.microsoft.com/en-us/netframework/aa496123.aspx"><span style="color:#0066dd">.NET Framework Developer Center</span></a><span> &gt; </span><span>.NET Development Forums</span> <br/><a href="http://social.msdn.microsoft.com/Forums/en-US/category/netdevelopment">http://social.msdn.microsoft.com/Forums/en-US/category/netdevelopment</a><br/><br/>The long list of forums there (in no obvious order, sadly), includes WPF and WCF, but NOT WWF!<br/><br/>The way I found THIS forum, was using a search engine!</div> </div>Wed, 18 Nov 2009 19:49:41 Z2009-11-25T17:05:32Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/07ef3a86-5cc2-49e6-8d07-1dbd2e04a64dhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/07ef3a86-5cc2-49e6-8d07-1dbd2e04a64dDedyshkahttp://social.msdn.microsoft.com/Profile/en-US/?user=DedyshkaCustom Activity in WorkflowViewGood day.<br/> I created a Custom Activity.<br/> In which declared the property:<br/> <pre lang="x-c#">public static DependencyProperty IsFileInDirectoryProperty = DependencyProperty.Register(&quot;IsFileInDirectory&quot;, typeof(Boolean), typeof(FilesDirActivity)); [Description(&quot;IsFile&quot;)] [Category(&quot;Custom property&quot;)] [Browsable(true)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)] public Boolean IsFileInDirectory { get { return ((Boolean)base.GetValue(FilesDirActivity.IsFileInDirectoryProperty)); } set { base.SetValue(FilesDirActivity.IsFileInDirectoryProperty, value); } } </pre> Added dll with Activity in the Toolbox VisualStudio.<br/> Threw it to the designer's workflow. IfElseActivity placed just behind him.<br/> In the editor condition rules IfElseActivity seen DependencyProperty from my Custom Activity (this.FilesDirActivity.IsFileInDirectory).<br/> <br/> But if create Win App Form in which the Workflow Designers realize that when you add the same Activity (Custom and IfElse) in the editor<br/> condition rules does not see DependencyProperty from my Custom Activity.<br/> If write this.FilesDirActivity.IsFileInDirectory I get an error:<br/> &quot;Error creating conditions. Field or property filesDirActivity1 for the type «System.Workflow.Activities.SequentialWorkflowActivity»<br/> does not exist or is not available&quot;.<br/> Help solve the problem.Wed, 25 Nov 2009 14:06:59 Z2009-11-25T14:07:00Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/282dbf60-2f33-4454-9809-17ed09e07714http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/282dbf60-2f33-4454-9809-17ed09e07714Pavan Kumar Chebroluhttp://social.msdn.microsoft.com/Profile/en-US/?user=Pavan%20Kumar%20ChebroluSuggest Best way to mention TimeSpans Values when multiple Worlflows have multiple delay ActivitiesHi All,<br/> <br/> In my project we are using multiple workflows means each module we maintain one Workflow.<br/> <br/> <br/> For Getting the Runtime We maintain one Generic Method i.e GetWorkflowRuntime(). In that we add the Tracking and Persistence Services to Runtime and its returns the Workflow Runtime(means this Workflow Runtime having the Tracking and Persistence Services. Right!)<br/> <br/> <br/> <strong>SqlWorkflowPersistenceService persistanceService = new SqlWorkflowPersistenceService(sqlTrackingConnection,true,new TimeSpan(0,0,10,0),new TimeSpan(0,0,0,5));<br/> <br/> </strong> Everyone for runtime they are the the above Method in our Project. So problem is each workflow having the Delay Activities. The Timeout Property for Delay Activity we made it as Configurable(means the value will come from databse). So each workflow will have different Timeout values.(It may 2days, 5days, ....or 1 Month also).<br/> <br/> So what is the best value for ownership Timespan foe SqlPersistence Service Constructor. <br/> <strong><br/> Thanks in Advance..........<br/> <br/> </strong>Wed, 25 Nov 2009 11:52:05 Z2009-11-25T11:52:06Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/bd91f78e-083c-4f81-95ce-084b1aa73148http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/bd91f78e-083c-4f81-95ce-084b1aa73148waynemurhttp://social.msdn.microsoft.com/Profile/en-US/?user=waynemurHow to debug a WF project that is stuck while waiting for completion?I have a workflow project with a Policy Activity and a trivial Rule Set.  When I run the client, the app seems to get stuck waiting for the WF to return.  I have tried to change the startup project to the WF project and the Debug mode to run my client project to be able to step through it in debug mode but no success.  Any ideas? <div><br/></div> <div>Thanks in advance,</div> <div><br/></div> <div>WayneM</div>Fri, 20 Nov 2009 03:40:58 Z2009-11-25T10:03:30Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/ed60cda4-f5d0-4c56-b732-ea33ac524976http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/ed60cda4-f5d0-4c56-b732-ea33ac524976Sandeep.Handahttp://social.msdn.microsoft.com/Profile/en-US/?user=Sandeep.HandaHow to build orchestration in Windows WorkFlow FoundationHi All, <div>I have two general question regarding WF</div> <div>1.  How can i graphically create XLST Map in WF.( As no tools are avilable)</div> <div>2.  I am with product based firm where they have got EDI product writtern in VC++ , and they have got workflow feature in there product just they want nice UI so that use can design workflow using some tool.</div> <div>We thought of going for WF.</div> <div><br/></div> <div>As i new to WF i saw that we need to write code for activity shape ..do user need to write code for this when designig workflow..</div> <div>3.   Also in what for messages flow in orchestartion in WF..</div> <div>like in biztalk it is XML and how can i communicate with SQL ...like in Biztalk there is port to communicate..</div> <div><br/></div> <div>Pls advise</div> <div>Sandeep </div> <div><br/></div>Fri, 20 Nov 2009 09:53:36 Z2009-11-25T09:59:08Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/abd83f38-1085-43e6-adcb-ca3034f6cddahttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/abd83f38-1085-43e6-adcb-ca3034f6cddajupinhttp://social.msdn.microsoft.com/Profile/en-US/?user=jupinWF Re-hosting and highlighting of activity component<p>Hi,</p> <p>I'm rehosting a workflow designer in a windows appliaction.  I know how to obtain a currently running activity, but I would like to highlight this activity in my designer by color.  </p> <p>Is there any way to highlight workflow activity  component in runtime?</p>Fri, 20 Nov 2009 12:09:08 Z2009-11-25T09:31:48Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/95f20bb1-1655-4cd5-ab23-8b29237c6cechttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/95f20bb1-1655-4cd5-ab23-8b29237c6ceccuthill76http://social.msdn.microsoft.com/Profile/en-US/?user=cuthill76WF and Tracing from asp.net<p>I am trying to set up tracing for the workflow I am building, which simply sends an email. Following on from various articles I have read I have added the following to the configuration file of the host application:</p> <p>   &lt;system.diagnostics&gt;<br/>    &lt;switches&gt;<br/>      &lt;add name=&quot;System.Workflow.Runtime&quot; value=&quot;All&quot; /&gt;<br/>      &lt;add name=&quot;System.Workflow.Runtime.Hosting&quot; value=&quot;All&quot; /&gt;<br/>      &lt;add name=&quot;System.Workflow.Runtime.Tracking&quot; value=&quot;All&quot; /&gt;<br/>      &lt;add name=&quot;System.Workflow.Activities&quot; value=&quot;All&quot; /&gt;<br/>      &lt;add name=&quot;System.Workflow.Activities.Rules&quot; value=&quot;All&quot; /&gt;<br/>      &lt;add name=&quot;System.Workflow LogToFile&quot; value=&quot;1&quot; /&gt;<br/>    &lt;/switches&gt;<br/>  &lt;/system.diagnostics&gt;<br/><br/>This works fine if the host application is a console application with an app.config file. When I run the entire solution from within Visual Studio 2005 the file WorkflowTrace.log is written into the bin directory of the console application.<br/><br/>If I replace the frontend application with an asp.net application I can not get the tracing to work. I place the above code in the web.config file. The workflow still functions and an email is sent but no tracing file is generated.<br/><br/>Can anyone help me with this?<br/><br/>Thanks,<br/>Iain</p>Mon, 23 Nov 2009 15:21:24 Z2009-11-25T09:25:41Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/863d7a31-a0c5-4e38-85db-ab03568c4389http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/863d7a31-a0c5-4e38-85db-ab03568c4389sujithuhttp://social.msdn.microsoft.com/Profile/en-US/?user=sujithuWill work flow work if no user logged in to a web appliaction?<p>I am creating a work flow (WF)</p> <p>I am using a delay activity</p> <p> </p> <p>I have set its delay such that</p> <p>It will work today night at 10 O clocks .</p> <p> </p> <p>I am using sql persistence service</p> <p> </p> <p> </p> <p>I have hosted it on IIS server</p> <p> </p> <p>If I log off my system by 8 O clock</p> <p>(Still it is on some other user is log on my system he is NOT accessing the  web application where I hosted the</p> <p>WF )</p> <p> </p> <p>Will the  WF work at 10 o’clock?</p> <p>If I am using some session variable to achieve  some task?</p> <p>How  WF will be able to access the session variable since No user is logged in to the application ?</p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p>Fri, 20 Nov 2009 15:43:38 Z2009-11-25T09:18:34Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/ad516839-fa67-43e7-a419-9ea9586d1ff0http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/ad516839-fa67-43e7-a419-9ea9586d1ff0cantryhttp://social.msdn.microsoft.com/Profile/en-US/?user=cantryWindows Workflow Foundation for Data flow centric applicationIs WF 4.0 suitable for data flow centric application?<br/> <br/> In Data flow how data moves through a collection of operations.  The control is activated as data moves<br/> In case of Control flow it is flow of control where as data can be part of the control.<br/> <br/> I see most of the example is Control Flow centric hence the questions.    <br/>Tue, 24 Nov 2009 05:54:17 Z2009-11-25T05:58:27Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/b5e9a816-4587-4844-a16a-6d765d53766dhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/b5e9a816-4587-4844-a16a-6d765d53766dAmmit Eclipsyshttp://social.msdn.microsoft.com/Profile/en-US/?user=Ammit%20EclipsysWrite Rules with Generic Methods Hi,<br/><br/>I think this question may not belong here as we have take out the RuleSet Editor provided with 3.5 WF and used it as stand alone Rule Engine.<br/>Issue is i am writting a rule on an object. This object itself is a collection of some objects [which all derive from a common base class]<br/><br/>public class Base<br/>{<br/><br/>}<br/>public class DO : Base{}  public class TOO: Base{} Public class WOO: Base{} etc...etc...<br/><br/>public class RuleBase<br/>{<br/><br/>List&lt;Base&gt; data ; <br/><br/>public T GetObject&lt;T&gt;() { //some code that looks in the list of Base and returns tha matching object of type T } <br/>}<br/><br/><br/>As i can not write rules on multiple objects i have to take this workaround to avail end customer writting rule on multiple types. I have deliberately not added DO, WOO , TOO as members of RuleBase as i want other modules to plug in to my system by extending Base.<br/><br/>so while writting rule i want to get to a specific type to use all its methods but i can not directlt do that without GetObject kind of function.<br/><br/>issues is this &lt;T&gt; function does nto apear in the RuleSetEditor while writting rules.<br/><br/>as soon as i do <br/>this.   it does show me everything but the &lt;T&gt; generic method . WHY?<br/><br/>do i need to take a work around of using type object instead?<br/>e.g.<br/>public object GetObject(type t) ????<br/><br/>is there a better way to solve this problem?<br/><br/>quick response will be appriciated :)<br/><br/>thanks<br/>Ammit<br/><br/><br/><br/>Tue, 24 Nov 2009 19:22:33 Z2009-11-24T19:22:34Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/f2a6248f-aef9-4ccf-9731-fe7c883f9797http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/f2a6248f-aef9-4ccf-9731-fe7c883f9797Ross Holderhttp://social.msdn.microsoft.com/Profile/en-US/?user=Ross%20HolderSendActivity Use in the StateMachine WorkflowHave reviewed the existing &quot;Conversations&quot; workflow demo from the MS downloads site — this is based upon a SequentialWorkflow.  Has anyone out there had any experience whatsoever using the SendActivity within a state machine workflow?  Despite exceptionless execution and proper management of context, so far as I can tell, I can only get the SendActivity to work in the sequential workflow and not the state machine.<br/><br/>Ideas?<br/><hr class="sig">Ross is a .NET developer based in Gatineau, Québec (Canada), working with the Government of Canada.Mon, 16 Nov 2009 20:03:43 Z2009-11-24T18:47:53Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/c6c8fdff-20be-4f75-9996-1827b3fa729chttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/c6c8fdff-20be-4f75-9996-1827b3fa729cOnemahutuhttp://social.msdn.microsoft.com/Profile/en-US/?user=OnemahutuRe-Hosting WF: Wrong assembly in generated xoml-files / Access base propertiesHello,<br/> <br/> for my re-hosted workflow application I need a custom workflow which contains custom parameters as basis.<br/> <br/> My workspace consists of following projects:<br/> - A project (rather 2 projects) for the re-hosted application.<br/> - A project for my custom activity library.<br/> - And just recently it contains two new projects. One for the workflow library and one for the workflow itself (xoml, a WorkflowConsoleApp) which inherits from my base workflow<br/> (like described here: http://msmvps.com/blogs/theproblemsolver/archive/2007/11/26/pure-xoml-workflows-and-a-custom-root-activity.aspx) which is defined in my workflow library.<br/> <br/> <br/> First problem:<br/> <br/> In WorkflowDesignerControl.cs at method ShowDefaultWorkflow(), I initialize the basic workflow (from WorkflowConsoleApplication) which will be displayed in my designer:<br/> <br/> <br/> <pre lang="x-c#">... WorkflowConsoleApplication.MyWorkflow myWF = new WorkflowConsoleApplication.MyWorkflow(); ... </pre> I add my custom activity and save the xoml-file. The generated xoml-file from my re-hosted application now looks like this:<br/> <br/> <br/> <pre lang=x-xml>&lt;ns0:MyWorkflow x:Class=&quot;MyWorkflow&quot; x:Name=&quot;MyWorkflow&quot; xmlns:ns1=&quot;clr-namespace:Activity_Library;Assembly=Activity_Library, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null&quot; xmlns:x=&quot;http://schemas.microsoft.com/winfx/2006/xaml&quot; xmlns:ns0=&quot;clr-namespace:WorkflowConsoleApplication;Assembly=WorkflowConsoleApplication, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null&quot;&gt; ...</pre> <br/> <br/> And here is the problem: The assembly &quot;xmlns:ns0=&quot;clr-namespace:WorkflowConsoleApplication;Assembly=WorkflowConsoleApplication&quot;, <br/> the WorkflowConsoleApplication is wrong. First, it isn't a assembly and second point, it has to be &quot;WorkflowLibrary&quot;.<br/> Right, it has to be:<br/> <br/> <br/> <pre lang=x-xml>&lt;ns0:MyWorkflow x:Class=&quot;MyWorkflow&quot; x:Name=&quot;MyWorkflow&quot; xmlns:ns1=&quot;clr-namespace:Activity_Library;Assembly=Activity_Library, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null&quot; xmlns:x=&quot;http://schemas.microsoft.com/winfx/2006/xaml&quot; xmlns:ns0=&quot;clr-namespace:WorkflowLibrary;Assembly=WorkflowLibrary, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null&quot;&gt; ...</pre> <br/> <br/> I tried this solution here http://social.msdn.microsoft.com/forums/en-US/windowsworkflowfoundation/thread/5cad654f-e46c-4d7c-b6a3-12cc19e08cf7/ and added<br/> <br/> <br/> <pre lang="x-c#">[assembly: System.Workflow.ComponentModel.Serialization.XmlnsDefinition(&quot;urn:WorkflowLibrary&quot;, &quot;WorkflowLibrary&quot;)]</pre> <br/> to my basic workflow in the library, but it doesn't helps.<br/> <br/> <br/> Does anybody know how to change the namespace of the root activity?<br/> <br/> <br/> <br/> Second problem:<br/> <br/> In this constellation, is it possible to access the custom parameters of my basic workflow from my custom activities?<br/> Logically, I have only access to the &quot;standard&quot; properties of my base class (in this case the workflow) like &quot;description&quot;.<br/> <br/> Is there any (smart) way to get access to the custom property of my workflow?<br/> <br/> <br/> <br/> Thank you very much.<br/> <br/> <br/> Greetings<br/> <br/> OnemahutuTue, 24 Nov 2009 17:26:34 Z2009-11-24T17:26:35Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/6afc71be-d84e-437b-bc38-4961649f0b75http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/6afc71be-d84e-437b-bc38-4961649f0b75GoDaddyhttp://social.msdn.microsoft.com/Profile/en-US/?user=GoDaddyWorkflow custom activities<div class=post-text> <p>Let's say I have a custom activity that has a dependency property of type GUID.</p> <p>I want in my custom designer to show like a combobox (or my own usercontrol) with possible values to select from (the values should comes from the database).</p> <p>Is this possible ?</p> </div>Mon, 23 Nov 2009 19:29:08 Z2009-11-24T13:53:59Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/e9a9a710-3da5-4088-9943-1f1967448e0dhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/e9a9a710-3da5-4088-9943-1f1967448e0dDedyshkahttp://social.msdn.microsoft.com/Profile/en-US/?user=DedyshkaCustomActivity inherited from IfElseActivity<span class="medium_text"><span style="background-color:#ffffff" title="Добрый день.">Good day.<br/> </span> <span style="background-color:#ffffff" title="Мне нужен CustomActivity унаследованный от IfElseActivity чтобы переписать его внешний вид в дизайнере.">I need CustomActivity inherited from IfElseActivity to rewrite its appearance in the designer.<br/> </span> <span style="background-color:#ffffff" title="Возможно ли это?">Is this possible?<br/> </span> <span style="background-color:#ffffff" title="Спасибо.">Thank you.</span> </span>Wed, 18 Nov 2009 13:15:35 Z2009-11-25T01:02:57Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/2b9a137f-74ef-4592-8f42-7757ee5009f7http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/2b9a137f-74ef-4592-8f42-7757ee5009f7Sandeep.Handahttp://social.msdn.microsoft.com/Profile/en-US/?user=Sandeep.HandaDoes WWF supports VC++ codeHi All, <div>I am working with product based firm where they have got EDI product developed on VC++. Now to give better look and feel to customers ..We were thinking if we can go for WWF so that we have better UI and WorkFlow Engine</div> <div><br/></div> <div>If anyone please guide me how can i go about for a product that is writtern on VC++ and WWF which is on C#..</div> <div><br/></div> <div>Pls Advise</div> <div>Sandeep</div>Thu, 19 Nov 2009 06:13:25 Z2009-11-24T08:01:52Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/540525ee-0ab8-42bd-b69b-63dd4b058be9http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/540525ee-0ab8-42bd-b69b-63dd4b058be9AP_Workflowhttp://social.msdn.microsoft.com/Profile/en-US/?user=AP_WorkflowState not Executing after some time (Executing state Activity repeatly after some time)Hi,<br/><br/>I am new to windows workflow.I have implemented StateMachineWorkflow to my application<br/><br/>In this we have used Persistence Service also.But When the InstanceID is not used for 2 miniutes it is give the same state till releated event get fires .<br/><br/>If second time i fire the event and run the scheduler.runworkflow()(Manual Workflow Scheduler) for the same workflowinstance it is executing the state and pass to next state.<br/><br/>I think when i am executing the workflow instance for particular event it got unloaded from the memory and saved in persistence store DB.<br/><br/>But again when i am trying to raise the event for the same  instance it is executing the state but it is not forwarding to next state.<br/><br/>If again i try to raise the event for the same instance it is working fine and forwrding the state.<br/><br/>I am using ManaualSchedular Service ang SQL Persiatence Services as runtime Services.<br/><br/>After raising the related workflow event   i am running the schudular.runworkflow(InstanceID) also.<br/><br/><br/>Please some give me way how can i resolve this problem. <br/><br/><br/>Thanks &amp; Reagrds<br/>AP_WorkflowMon, 23 Nov 2009 07:19:09 Z2009-11-23T14:18:30Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/aeca6208-9c6a-4c9d-9149-21e2cf2df58dhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/aeca6208-9c6a-4c9d-9149-21e2cf2df58dT.Satish Kumarhttp://social.msdn.microsoft.com/Profile/en-US/?user=T.Satish%20KumarCouple of requests about Workflow persistance and Data exchangeHi All,<br/> I have been using WF for quite some time and have been struck up with some issues. Can any body help me?<br/> <br/> 1. When running a workflow, I need to suspend/resume the workflow from any of the activities. To make it more detailed, Let us say I have a workflow with 10 steps and I have completed 3 steps in the flow. Later when I start the flow, I need to be able to restart the flow from any of the 3 steps and go forward.  Also if I am dealing with a completed flow, I  need to be able to start  from any of the completed steps. From what I have researched, I got that a part of this can be achieved by using persistence. But upto my understanding, persistence can resume the flow only from the last activity that is persisted, im my case it is activity 3 and not from any of 1,2,3. <br/>  2.once the flow is completed, would I be able to start the flow from any of the completed activities?<br/>  3. Also how would persistence behave in the case of a while activity? If a while activity is supposed to run for 10 iterations and the flow is closed/suspended in 3rd iteration. After resume would it start from the 4th iteration? Do I need to write any custom persistence services to achieve the se funcctionalities or I can get these things done with the persistence services provided in the framework?<br/> 4. I have rehosted the workflow and creating workflows on the fly. In each activity, I am using reflection to call my business logic functions. In  my flows, some activities need inputs which are generated by the previous activities in the flow. Currently I am returning an arraylist of output(s) from each step and setting those outputs to the corresponding properties at the end of that activity. Is there a better framework for setting the required parameters to the activities. I have looked into dependency properties  but not sure whether they suit my requirement.<br/> Code snippets would help very much.<br/> <br/> Thanks,<br/> Satish Mon, 23 Nov 2009 10:55:58 Z2009-11-23T14:02:59Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/a5632d1c-6623-46e8-989e-8782d6b0c4ffhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/a5632d1c-6623-46e8-989e-8782d6b0c4ffMaddy12345http://social.msdn.microsoft.com/Profile/en-US/?user=Maddy12345Windows workflow error<p>In wwf, i'm getting error message &quot;queue message properties Interface types: method name....&quot; error.<br/>please help me to figure out why this error is coming.</p>Wed, 16 Sep 2009 14:36:38 Z2009-11-23T13:51:19Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/fcd1248d-a6fc-49d7-9253-bb46df319851http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/fcd1248d-a6fc-49d7-9253-bb46df319851Derrick1298http://social.msdn.microsoft.com/Profile/en-US/?user=Derrick1298Workflow and Unit Tests - synchronization?<p>Hello,<br/><br/>We have a number of workflows implemented, driven by assorted WCF service implementations.<br/><br/>We have unit tests that do something like<br/>1) create workflow XYZ<br/>2) fire event ABC into workflow instance 1 of workflow XYZ<br/>3) while(the work expected to be done, is not done yet) { thread.Sleep(some interval) }<br/>4) assert.istrue(the expected work was completed and persisted to the db.<br/><br/>Does anyone have any suggestions for a better approach than step 3 above?  Is it possible to pass a ManualResetEvent into a workflow, and follow that path?<br/><br/>Thanks in advance,<br/><br/>Derrick</p>Tue, 17 Nov 2009 18:31:18 Z2009-11-24T19:33:54Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/dca7d75b-1189-434c-bd6c-d759ae93e211http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/dca7d75b-1189-434c-bd6c-d759ae93e211Alexey Ragahttp://social.msdn.microsoft.com/Profile/en-US/?user=Alexey%20RagaWF in Enterprise: performance and posibilitiesHi Guys,<br/> <br/> I'm working on a very big enterprise solution and now I'm thinking about implementing some of our business processes in WF so I have a couple of questions:<br/> <br/> <ol> <li><strong>WF performance.</strong> Here I'm talking about having hundreds of WFs at the time processing stuff. Basically, these WFs are not long-running, they should not persist, etc. It is just a &quot;message&quot; processing logic. In the app we can have a looooot of messages we have to process. Is it OK to have a big number of WFs running at the same time? How big is the overhead (if any), or any other suggestions? </li> <li><strong>External Services.</strong> I'm going to provide these WFs with some services. These services encapsulate EF connections (basically, DB connections, MS SQL Server 2008 if it matters). As I understand, it is not defined that WF is executed in the same thread you invoke it, that's cool. Will it be a problem then to use these DB connections if the particular WF is executed by the WF Runtime in a different thread?</li> </ol> <br/> And yes, I'm talking about the &quot;web-based&quot; application: we have &quot;Web&quot; nodes (interface) and &quot;App&quot; nodes (business logic) which are talking to each other via WCF. I'm planning run WF on this &quot;app&quot; layer.<br/>Mon, 23 Nov 2009 05:26:51 Z2009-11-24T12:03:08Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/3ff9724d-1e5f-4c61-963c-982af1a34e46http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/3ff9724d-1e5f-4c61-963c-982af1a34e46nandsnyouhttp://social.msdn.microsoft.com/Profile/en-US/?user=nandsnyouRuleSyntaxException occurredHi everyone.<br/> I am working on Hosting the Designer. After refering to <a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2006/08/22/6223.aspx">this</a> <br/> I did Debug-&gt;Exceptions-&gt;CLR Exceptions<br/> After loading the xoml file when I go through<br/> DynamicUpdateCondition property-&gt;Declarative Rule Condition-&gt;Condition Name-&gt;Select Condition-&gt;New Condition<br/> I get the following exception:<br/> &quot;RuleSyntaxException occurred. The condition can not be empty.&quot;<br/> What do I need to do?<br/> <br/> Thanks in advance.<br/> <br/> Below is my full code;<br/> <br/> using System; <br/> using System.Collections.Generic; <br/> using System.ComponentModel; <br/> using System.Drawing; <br/> using System.Data; <br/> using System.Text; <br/> using System.Windows.Forms; <br/> using System.ComponentModel.Design; <br/> using System.ComponentModel.Design.Serialization; <br/> using System.Workflow.ComponentModel; <br/> using System.Workflow.ComponentModel.Compiler; <br/> using System.Workflow.Activities; <br/> using System.Workflow.ComponentModel.Design; <br/> using System.Runtime.InteropServices; <br/> using System.Collections; <br/> using System.Collections.ObjectModel; <br/> using System.IO; <br/> using System.Xml; <br/> using System.Workflow.ComponentModel.Serialization; <br/> using System.Drawing.Design; <br/>  <br/>  <br/> namespace WF29_10 <br/> { <br/>     public partial class WFDControl : Form, IServiceProvider, ISite <br/>     { <br/>  <br/>         private WorkflowView workflowView; <br/>         private IDesignerHost designerHost; <br/>  <br/>         public WFDControl() <br/>         { <br/>             InitializeComponent(); <br/>  <br/>            <br/>         } <br/>  <br/>         private void WFDControl_Load(object sender, EventArgs e) <br/>         { <br/>             InitialiseWorkflow(); <br/>  <br/>             if (designerHost != null) <br/>             { <br/>                 designerHost.RemoveService(typeof(IIdentifierCreationService));                 <br/>                 designerHost.AddService(typeof(IMenuCommandService), new WorkflowMenuCommandService(designerHost));                <br/>                 TypeProvider typeProvider = new TypeProvider(designerHost); <br/>                 typeProvider.AddAssemblyReference(typeof(string).Assembly.Location); <br/>                 designerHost.AddService(typeof(ITypeProvider), typeProvider, true); <br/>                <br/>             } <br/>  <br/>             InitialiseSelectionChangedHandler(); <br/>  <br/>             InitialiseToolbox(); <br/>  <br/>         } <br/>  <br/>  <br/>  <br/>  <br/>         # region Menu Command <br/>  <br/>         internal sealed class WorkflowMenuCommandService : MenuCommandService <br/>         { <br/>             public WorkflowMenuCommandService(IServiceProvider serviceProvider) <br/>                 : base(serviceProvider) <br/>             { <br/>             } <br/>  <br/>             public override void ShowContextMenu(CommandID menuID, int x, int y) <br/>             { <br/>                 if (menuID == WorkflowMenuCommands.SelectionMenu) <br/>                 { <br/>                     ContextMenu contextMenu = new ContextMenu(); <br/>  <br/>                     foreach (DesignerVerb verb in Verbs) <br/>                     { <br/>                         MenuItem menuItem = new MenuItem(verb.Text, new EventHandler(OnMenuClicked)); <br/>                         menuItem.Tag = verb; <br/>                         contextMenu.MenuItems.Add(menuItem); <br/>                     } <br/>  <br/>                     MenuItem[] items = GetSelectionMenuItems(); <br/>                     if (items.Length &gt; 0) <br/>                     { <br/>                         contextMenu.MenuItems.Add(new MenuItem(&quot;-&quot;)); <br/>                         foreach (MenuItem item in items) <br/>                             contextMenu.MenuItems.Add(item); <br/>                     } <br/>  <br/>                     WorkflowView workflowView = GetService(typeof(WorkflowView)) as WorkflowView; <br/>                     if (workflowView != null) <br/>                         contextMenu.Show(workflowView, workflowView.PointToClient(new Point(x, y))); <br/>                 } <br/>             } <br/>  <br/>             private MenuItem[] GetSelectionMenuItems() <br/>             { <br/>                 List&lt;MenuItem&gt; menuItems = new List&lt;MenuItem&gt;(); <br/>  <br/>                 bool addMenuItems = true; <br/>                 ISelectionService selectionService = GetService(typeof(ISelectionService)) as ISelectionService; <br/>                 if (selectionService != null) <br/>                 { <br/>                     foreach (object obj in selectionService.GetSelectedComponents()) <br/>                     { <br/>                         if (!(obj is Activity)) <br/>                         { <br/>                             addMenuItems = false; <br/>                             break; <br/>                         } <br/>                     } <br/>                 } <br/>  <br/>                 if (addMenuItems) <br/>                 { <br/>                     Dictionary&lt;CommandID, string&gt; selectionCommands = new Dictionary&lt;CommandID, string&gt;(); <br/>                     selectionCommands.Add(WorkflowMenuCommands.Cut, &quot;Cut&quot;); <br/>                     selectionCommands.Add(WorkflowMenuCommands.Copy, &quot;Copy&quot;); <br/>                     selectionCommands.Add(WorkflowMenuCommands.Paste, &quot;Paste&quot;); <br/>                     selectionCommands.Add(WorkflowMenuCommands.Delete, &quot;Delete&quot;); <br/>                     selectionCommands.Add(WorkflowMenuCommands.Collapse, &quot;Collapse&quot;); <br/>                     selectionCommands.Add(WorkflowMenuCommands.Expand, &quot;Expand&quot;); <br/>                     selectionCommands.Add(WorkflowMenuCommands.Disable, &quot;Disable&quot;); <br/>                     selectionCommands.Add(WorkflowMenuCommands.Enable, &quot;Enable&quot;); <br/>  <br/>                     foreach (CommandID id in selectionCommands.Keys) <br/>                     { <br/>                         MenuCommand command = FindCommand(id); <br/>                         if (command != null) <br/>                         { <br/>                             MenuItem menuItem = new MenuItem(selectionCommands[id], new EventHandler(OnMenuClicked)); <br/>                             menuItem.Tag = command; <br/>                             menuItems.Add(menuItem); <br/>                         } <br/>                     } <br/>                 } <br/>  <br/>                 return menuItems.ToArray(); <br/>             } <br/>  <br/>             private void OnMenuClicked(object sender, EventArgs e) <br/>             { <br/>                 MenuItem menuItem = sender as MenuItem; <br/>                 if (menuItem != null &amp;&amp; menuItem.Tag is MenuCommand) <br/>                 { <br/>                     MenuCommand command = menuItem.Tag as MenuCommand; <br/>                     command.Invoke(); <br/>                 } <br/>             } <br/>         } <br/>  <br/>         # endregion <br/>  <br/>         #region ISite Members <br/>  <br/>         IComponent ISite.Component <br/>         { <br/>             get { return this; } <br/>         } <br/>  <br/>         IContainer ISite.Container <br/>         { <br/>             get { return this.Container; } <br/>         } <br/>  <br/>         bool ISite.DesignMode <br/>         { <br/>             get { return true; } <br/>         } <br/>  <br/>         string ISite.Name <br/>         { <br/>             get <br/>             { <br/>                 return this.Name; <br/>             } <br/>             set <br/>             { <br/>                 this.Name = value; <br/>             } <br/>         } <br/>  <br/>         #endregion <br/>  <br/>         #region IServiceProvider Members <br/>  <br/>         object IServiceProvider.GetService(Type serviceType) <br/>         { <br/>             return this.GetService(serviceType); <br/>         } <br/>  <br/>         #endregion <br/>      <br/>  <br/>         private void InitialiseToolbox() <br/>         { <br/>             MyToolboxService toolboxService = new MyToolboxService(); <br/>  <br/>             designerHost.AddService(typeof(IToolboxService), <br/>               toolboxService); <br/>  <br/>             myToolboxListView1.ServiceProvider = designerHost; <br/>  <br/>             myToolboxListView1.InitialiseToolboxItems(); <br/>         } <br/>  <br/>  <br/>  <br/>         private void InitialiseWorkflow() <br/>         { <br/>             DesignSurface designSurface = new DesignSurface(); <br/>             WorkflowLoader loader = new WorkflowLoader(); <br/>  <br/>             designSurface.BeginLoad(loader); <br/>             designerHost = designSurface.GetService(typeof(IDesignerHost)) as IDesignerHost; <br/>              <br/>         } <br/>  <br/>         private void LoadWorkflow() <br/>         { <br/>             if (designerHost != null &amp;&amp; designerHost.RootComponent != null) <br/>             { <br/>                 this.propertyGrid1.Site = designerHost.RootComponent.Site; <br/>                 IRootDesigner rootDesigner = designerHost.GetDesigner(designerHost.RootComponent) as IRootDesigner; <br/>                 if (rootDesigner != null) <br/>                 { <br/>                    <br/>                     this.workflowView = rootDesigner.GetView(ViewTechnology.Default) as WorkflowView; <br/>                     this.panel1.Controls.Add(this.workflowView); <br/>                     this.workflowView.Dock = DockStyle.Fill; <br/>                     this.workflowView.TabIndex = 1; <br/>                     this.workflowView.TabStop = true; <br/>                     this.workflowView.HScrollBar.TabStop = false; <br/>                     this.workflowView.VScrollBar.TabStop = false; <br/>                     this.workflowView.Focus(); <br/>                     this.workflowView.FitToScreenSize(); <br/>                 } <br/>             } <br/>         } <br/>  <br/>         private void openToolStripMenuItem_Click(object sender, EventArgs e) <br/>         { <br/>             string fileName = GetFileName(); <br/>  <br/>             if (fileName != null) <br/>             { <br/>                 Activity rootActivity = LoadWorkflowFromFile(fileName); <br/>  <br/>                 if (rootActivity != null) <br/>                 { <br/>                     AddActivityToDesigner(rootActivity); <br/>  <br/>                     LoadWorkflow(); <br/>  <br/>                     SelectRootActivity(); <br/>  <br/>                 } <br/>             } <br/>  <br/>         } <br/>  <br/>         private void SelectRootActivity() <br/>         { <br/>             ISelectionService selectionService = <br/>               GetHostService&lt;ISelectionService&gt;(); <br/>  <br/>             selectionService.SetSelectedComponents( <br/>               new object[] { designerHost.RootComponent }); <br/>         } <br/>         private void InitialiseSelectionChangedHandler() <br/>         { <br/>             ISelectionService selectionService = <br/>               GetHostService&lt;ISelectionService&gt;(); <br/>  <br/>             selectionService.SelectionChanged += <br/>               new EventHandler(OnSelectionChanged); <br/>         } <br/>         void OnSelectionChanged(object sender, EventArgs e) <br/>         { <br/>             ISelectionService selectionService = <br/>               GetHostService&lt;ISelectionService&gt;(); <br/>  <br/>             propertyGrid1.SelectedObjects = <br/>               (object[])selectionService.GetSelectedComponents(); <br/>         } <br/>         private T GetHostService&lt;T&gt;() where T : class <br/>         { <br/>             T service = designerHost.GetService(typeof(T)) as T; <br/>             return (service); <br/>         } <br/>  <br/>  <br/>         private void AddActivityToDesigner(Activity rootActivity) <br/>         { <br/>             <br/>             designerHost.Container.Add(rootActivity); <br/>  <br/>             <br/>             CompositeActivity compositeActivity = rootActivity as CompositeActivity; <br/>  <br/>             if (compositeActivity != null) <br/>             { <br/>                 foreach (Activity childActivity in compositeActivity.Activities) <br/>                 { <br/>                      <br/>                     AddActivityToDesigner(childActivity); <br/>                 } <br/>             } <br/>         } <br/>         private static Activity LoadWorkflowFromFile(string fileName) <br/>         { <br/>             ActivityMarkupSerializer serializer = new ActivityMarkupSerializer(); <br/>             Activity activity = null; <br/>  <br/>             using (XmlReader reader = XmlReader.Create(fileName)) <br/>             { <br/>                 activity = serializer.Deserialize(reader) as Activity; <br/>             } <br/>             return (activity); <br/>         } <br/>         private static string GetFileName() <br/>         { <br/>             string fileName = null; <br/>  <br/>             OpenFileDialog d = new OpenFileDialog(); <br/>             d.Title = &quot;Select XAML based Workflow&quot;; <br/>             d.Filter = &quot;XAML Files (*.xoml)|*.xoml|All Files (*.*)|*.*&quot;; <br/>  <br/>             if (d.ShowDialog() == DialogResult.OK) <br/>             { <br/>                 fileName = d.FileName; <br/>             } <br/>             return (fileName); <br/>         } <br/>  <br/>     } <br/> }<br/> <br/>Sat, 07 Nov 2009 16:49:25 Z2009-11-23T08:36:15Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/7942aee9-8488-4d9f-a49f-981a78a09050http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/7942aee9-8488-4d9f-a49f-981a78a09050waynemurhttp://social.msdn.microsoft.com/Profile/en-US/?user=waynemurWhat is the Best Way to implement Multiple Rule Sets?<div>I have an application where I want to use workflow Rules, but have many different cases which require different rule sets.  What is the best way to implement?  I was thinking about a IfThenElse Activity that branched to multiple Policy Activities.  Any suggestions are appreciated.</div> <div><br/></div>Tue, 17 Nov 2009 19:24:47 Z2009-11-25T01:14:52Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/61ee09ae-7f87-4ed5-8700-6308a50f29edhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/61ee09ae-7f87-4ed5-8700-6308a50f29edWorkflow Rockshttp://social.msdn.microsoft.com/Profile/en-US/?user=Workflow%20Rocks"Worklfows in Memory" keeps increasing<p class=MsoNormal style="margin:0in 0in 0pt"><span style="font-size:small"><span style="font-family:Calibri">Hello,</span></span></p> <p class=MsoNormal style="margin:0in 0in 0pt"><span style="font-family:Calibri;font-size:small"> </span></p> <p class=MsoNormal style="margin:0in 0in 0pt"><span style="font-size:small"><span style="font-family:Calibri">                I have a windows service which is a workflow processing service; it keeps loading workflows that has an expired next timer. </span></span></p> <p class=MsoNormal style="margin:0in 0in 0pt"><span style="font-family:Calibri;font-size:small"> </span></p> <p class=MsoNormal style="text-indent:0.5in;margin:0in 0in 0pt"><span style="font-size:small"><span style="font-family:Calibri">Recently I found the performance counter “workflows in memory” keeps increasing while the service is running, not a lot, but it is increasing. I have set the “UnloadOnIdle” to be true in persistence service, so in theory there shouldn’t be any workflow instance living in memory if it’s not being processed.</span></span></p> <p class=MsoNormal style="margin:0in 0in 0pt"><span style="font-family:Calibri;font-size:small"> </span></p> <p class=MsoNormal style="margin:0in 0in 0pt"><span style="font-size:small"><span style="font-family:Calibri">                Could anyone point me out what kind of scenario could possibly cause a workflow instance to be forever living in my process?<br/></span></span></p> <p class=MsoNormal style="margin:0in 0in 0pt"><span style="font-family:Calibri;font-size:small"><br/>                I looked at the performance counter, there are more than 1600 workflow instances in &quot;workflows in memory&quot;, but very few of them are runnalbe. I queried database and find out all those instances whose ownerid is not null, are all the ones with expire time ids in future. I guess they are loaded and processed until they met another delay, and then they stop, persisted, but not unloaded. Is there possible? Because the machine is powerful so there's no memory pressure, does that mean if memory is enough on the machine, some workflow instances will not be unloaded forever? If this is true, how can I make it unload anyway?<br/><br/> </span></p> <p class=MsoNormal style="margin:0in 0in 0pt"><span style="font-size:small"><span style="font-family:Calibri">Thanks a lot</span></span></p>Thu, 19 Nov 2009 05:57:27 Z2009-11-24T07:43:51Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/42f552ee-fa26-4f55-bc7c-fbb2ec163500http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/42f552ee-fa26-4f55-bc7c-fbb2ec163500Pavan Kumar Chebroluhttp://social.msdn.microsoft.com/Profile/en-US/?user=Pavan%20Kumar%20ChebroluHow to Persist my Workflow When An Exception is Raises ?Hi,<br/> <br/> I have one Workflow and i Maintained fault Handlers for catching the Exceptions. Ok, When Exception raises automatically it comes to Completed EventHanlder and Compete the Workflow. On that Time <strong>How to Persist my Workflow When Exception Raises.</strong> <br/> <br/> <br/> Plz tell me if Any one knows..........Mon, 16 Nov 2009 15:33:46 Z2009-11-23T02:52:21Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/8d0eb857-b728-49a9-9945-6f18049e1b2fhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/8d0eb857-b728-49a9-9945-6f18049e1b2fArash Rhttp://social.msdn.microsoft.com/Profile/en-US/?user=Arash%20RWorkflow Foundation Enterprise Sample and Best PracticeHi,<br/> we are new to windows workflow foundation.we want to use it in an enterprise application with a lot of Entities Like Invoice, Purchase, Warehouse, Account, Payroll,...<br/> we Have downloaded two samples: WFOrders and web workflow approval,<br/> we wanted to use the best practice for designing the database for workflow support (for example: Issue an invoice, submit to manager for confirmation and some other processes) but these two samples are so easy for using them as a template for best practice.<br/> how can i find any sample or best practice documents or any other materials for doing such thing? <br/> does WF 4.0 support BPEL?<br/> <br/> Regards,<br/> Arash<br/>Sun, 15 Nov 2009 06:29:00 Z2009-11-23T05:44:59Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/86b16d86-7631-4465-ab02-8105d23f2ac5http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/86b16d86-7631-4465-ab02-8105d23f2ac5mrrob1978http://social.msdn.microsoft.com/Profile/en-US/?user=mrrob1978How do I bind an activity property to target that doesn't use standard path notation (e.g. A.B.C)<p>My workflow has a parameter (implemented as a DependencyProperty) of type Contact which has a collection property that needs to be accessed like this:<br/><br/>Contact.Fields[&quot;EmailAddress&quot;]<br/>Contact.Fields[&quot;Birthdate&quot;]<br/>...<br/><br/>Ideally, these elements would normally just be properties off my Contact object...  if that were the case, I could use ActivityBind without a problem, like this:<br/><br/>&lt;CustomEmailActivity To=&quot;{ActivityBinding Name=MyWorkflow, Path=Contact.EmailAddress}&quot;/&gt;<br/><br/>however, since the Contact metadata is user-editable it has been implemented using the collection of key/value pairs and thus I need something like this:<br/><br/>&lt;CustomEmailActivity To=&quot;{ActivityBinding Name=MyWorkflow, Path=Contact.Fields['EmailAddress']}&quot;/&gt;<br/><br/>Unfortunately this doesn't seem to work - I get errors because of the quotes in the Path property, and to make matters worse the collection is of .NET properties, not DependencyProperties (so I'll assume there will be more complications with data binding once I get around the notation).<br/><br/>Is it possible to make the above markup work?  If not (which I suspect is the case), I'm thinking I need to write my own MarkupExtension class that takes a string defining the property name to access, maybe like one of these:<br/><br/>&lt;CustomEmailActivity To=&quot;{mybinding:ContactBinding Property=EmailAddress}&quot;/&gt;<br/>(would this MarkupExtension class need to return a binding? how would this work?)<br/><br/>&lt;CustomEmailActivity To=&quot;{ActivityBinding Name=MyWorkflow, Path={mysource:Contact Property=EmailAddress}}&quot;/&gt;<br/>(what would this need to return? would I need to implement my own data binding here?)<br/><br/>Not much documentation on MSDN or the web in general on MarkupExtension or non-standard use of ActivityBind... any thoughts are appreciated!<br/><br/></p>Fri, 13 Nov 2009 17:43:35 Z2009-11-20T02:27:52Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/2ff22d51-e16e-470d-a4f0-d2a11b9825fchttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/2ff22d51-e16e-470d-a4f0-d2a11b9825fcwaynemurhttp://social.msdn.microsoft.com/Profile/en-US/?user=waynemurCan you have multiple Policy Activies in one Workflow?Is it possible to have multiple Policy Activities as part of an IFElseActivity?Sun, 15 Nov 2009 20:45:10 Z2009-11-20T02:19:00Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/b186bd18-15ff-469e-bf2d-00b7195c7705http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/b186bd18-15ff-469e-bf2d-00b7195c7705Manikumar Mhttp://social.msdn.microsoft.com/Profile/en-US/?user=Manikumar%20MLoading the workflow from prefered persistant point on exception<p>Hi i have a workflow which has an activity to add a beneficiary by the user saving the details in DB, then i persist the wrokflow. After this the workflow waits in idle state till manager logs in and approve/disapprove the beneficiary added and then my workflow completes.</p> <p>My requirement is when there is some exception in manager approve/disapprove activity i want to unload the workflow requesting the manager to retry and when the manager retries i have to load the workflow from the previous persisted point ie from the point after the beneficiary details been saved in DB.</p> <p><br/>My problem is if i handle the exception using fault handler the work flow goes to completed state and if i dont handle it is terminating.In both the ways i am losing the workflow half done ie only the beneficiary details are saved in DB incomplete.</p> <p> </p> <p>How to fulfil my requirement? </p> <p><br/>My workFlow looks like<br/><br/><br/></p> <p class=MsoNormal style="margin:0in 0in 10pt;text-align:center" align=center><span style="font-size:small;font-family:Calibri">Start</span></p> <p class=MsoNormal style="margin:0in 0in 10pt;text-align:center" align=center><span style="font-size:small;font-family:Calibri">|</span></p> <p class=MsoNormal style="margin:0in 0in 10pt;text-align:center" align=center><span style="font-size:small;font-family:Calibri">External event to save beneficiary details</span></p> <p class=MsoNormal style="margin:0in 0in 10pt;text-align:center" align=center><span style="font-size:small;font-family:Calibri">|</span></p> <p class=MsoNormal style="margin:0in 0in 10pt;text-align:center" align=center><span style="font-size:small;font-family:Calibri">Custom activity that will persist the workflow (I have to start from this point when manger retries)</span></p> <p class=MsoNormal style="margin:0in 0in 10pt;text-align:center" align=center><span style="font-size:small;font-family:Calibri">|</span></p> <p class=MsoNormal style="margin:0in 0in 10pt;text-align:center" align=center><span style="font-size:small;font-family:Calibri">Listener activity that wait for Manager</span></p> <p class=MsoNormal style="margin:0in 0in 10pt;tab-stops:151.5pt center 3.25in"><span style="font-size:small"><span style="font-family:Calibri"><span style="">                                                    </span>-----------------------<span style=""> </span>|--------------------------</span></span></p> <p class=MsoNormal style="margin:0in 0in 10pt;tab-stops:151.5pt center 3.25in"><span style="font-size:small"><span style="font-family:Calibri"><span style="">                                                </span>|<span style="">                                                                    </span>|</span></span></p> <p class=MsoNormal style="margin:0in 0in 10pt;text-align:center" align=center><span style="font-size:small;font-family:Calibri">External event for manager approval<span style="">           </span>External event for manager disapproval</span></p> <p class=MsoNormal style="margin:0in 0in 10pt"><span style="font-size:small"><span style="font-family:Calibri"><span style="">                                                </span>|<span style="">                                                                      </span>|</span></span></p> <p class=MsoNormal style="margin:0in 0in 10pt;text-align:center" align=center><span style="font-size:small;font-family:Calibri">-----------------------|--------------------------</span></p> <p class=MsoNormal style="margin:0in 0in 10pt;text-align:center" align=center><span style="font-size:small;font-family:Calibri">End</span></p> <p> </p>Wed, 18 Nov 2009 11:45:48 Z2009-11-20T05:22:34Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/e724f60f-b1d6-4be5-a5c0-ae22b864bcbchttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/e724f60f-b1d6-4be5-a5c0-ae22b864bcbcPavan Kumar Chebroluhttp://social.msdn.microsoft.com/Profile/en-US/?user=Pavan%20Kumar%20Chebrolu Explain Clearly SqlWorkflowPersistenceService persistanceService in Windows WorkflowsCan Any one Explain In detail i.e<br/> <br/> I want to Know clear meaning of this Statement.<br/> <br/> <strong>SqlWorkflowPersistenceService persistanceService = new SqlWorkflowPersistenceService(sqlTrackingConnection,true,new TimeSpan(0, 0, 0, 10, 0), new TimeSpan(0, 0, 10, 10, 0));</strong> <br/> <br/> What is use of Timespan values in Constructor. Plz Explain me Anyone Clearly................<br/> <br/> <br/> Thanks in Advance............Tue, 17 Nov 2009 04:53:43 Z2009-11-20T07:08:09Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/9bda3e91-1309-43b1-8f85-4b8f8a003ac1http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/9bda3e91-1309-43b1-8f85-4b8f8a003ac1SSreejithhttp://social.msdn.microsoft.com/Profile/en-US/?user=SSreejithReading Activity details while persisting the workflowHi,<br/> <p class=MsoNormal><span style="font-family:'Verdana','sans-serif';color:black"> We are using custom workflow persistence service to Persists the workflow to our application database. We override’s &quot;SaveWorkflowInstanceState&quot; method provided in the &quot;</span> <span style="font-family:'Verdana','sans-serif'">WorkflowPersistenceService</span> <span style="font-family:'Verdana','sans-serif';color:black">&quot; class to persist current state of the workflow. Now our issue is while persisting the current state of the workflow, how can we know that in this current persistence, workflow executed this particular Delay activity (</span> <span style="font-family:'Verdana','sans-serif';color:black">Say X) (</span> <span style="font-family:'Verdana','sans-serif';color:black">delay activity executed just before persistence) and workflow expects this particular HandleExternalEvent Activity (Say Y) to be invoked for restoring Workflow from persistence. Is it possible to these read details of Activity X and Y from our overrided method “SaveWorkflowInstanceState”. Please advice</span></p> <p class=MsoNormal><span style="font-family:'Verdana','sans-serif';color:black">Regards</span></p> <p class=MsoNormal><span style="font-family:'Verdana','sans-serif';color:black">Sreejith</span></p>Wed, 18 Nov 2009 14:39:35 Z2009-11-19T12:29:22Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/9baa9cad-e76a-491d-bc20-3f0928d1c0d1http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/9baa9cad-e76a-491d-bc20-3f0928d1c0d1Onemahutuhttp://social.msdn.microsoft.com/Profile/en-US/?user=OnemahutuRe-Hosting WF: No error list shown<br/> Hello,<br/> <br/> my problem is the different behaviour of WF functions in Visual<br/> Studio 2008 (.Net 3.5) and Re-Hosting on an stand-alone-application.<br/> <br/> At the moment I've got the following problem:<br/> <br/> For my custom Activity I wrote an ActivityValidator. I added error messages over<br/> &quot;new ValidationError(...)&quot; and subsequently add my errors to the error list.<br/> This list is shown at the error list beside the red exclamation mark. But only in the <br/> workflow view of Visual Studio. My Re-Hosted application shows the exclamation mark,<br/> but doesn't open the error list when I click on it.<br/> Can someone help me, respectively explain this behaviour?<br/> Is there any additional event handler I have to add?<br/> Thanks.<br/> <br/> <br/> Greetings<br/> <br/> One<br/>Wed, 18 Nov 2009 17:32:34 Z2009-11-19T12:04:03Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/b4a4a873-402a-4fe5-978d-8b59e1ae62d2http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/b4a4a873-402a-4fe5-978d-8b59e1ae62d2Konstantin Vyaznikovhttp://social.msdn.microsoft.com/Profile/en-US/?user=Konstantin%20Vyaznikov"Invoke Workflow Synchronously" sample question<p>Hi,</p> <p> </p> <p>I found strange behaviour in Jon Flanders'  sample:</p> <p><a title="http://www.masteringbiztalk.com/blogs/jon/PermaLink,guid,7be9fb53-0ddf-4633-b358-01c3e9999088.aspx" href="http://www.masteringbiztalk.com/blogs/jon/PermaLink,guid,7be9fb53-0ddf-4633-b358-01c3e9999088.aspx">http://www.masteringbiztalk.com/blogs/jon/PermaLink,guid,7be9fb53-0ddf-4633-b358-01c3e9999088.aspx</a></p> <p> </p> <p>This is a nice sample, showing how to invoke workflow synchronously. During experimenting, I found the strange behaviour though. I will describe a sample and how to reproduce a problem.</p> <p> </p> <p>- Lets create workflow, which consists of the only code activity, and code activity handler makes the only operation: Thread.Sleep(5000), i.e. sleeping for 5 seconds.</p> <p>- Then let's create workflow which calls above created workflow, using sample from the reference.</p> <p>- Create a host and add there persistence service and local service from the sample above.</p> <p> </p> <p>Run workflow. It runs, calls the callee and finishes. So far so good.</p> <p> </p> <p>Run workflow and immediately shutdown the host (or stop runtime). Runtime will be stopped after 5 seconds delay, which is fine. Both workflows will be passivated at this moment. So far so good. When host is started again, workflows are loaded, the callee finalizes, but the caller <strong>waits indefinitely</strong>.</p> <p> </p> <p>I found that the reason is that there is no report that callee completed and as a result, item is not enqueued and caller is not closed, staying in memory forever.</p> <p> </p> <p>Is there a way to fix the sample or maybe I am doing something wrong?</p> <p> </p> <p>Thanks,</p> <p>Konstantin.</p> <p> </p> <p> </p>Sat, 02 Jun 2007 15:13:49 Z2009-11-19T10:57:00Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/7908bf7f-1819-46a9-b506-602506cc356ahttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/7908bf7f-1819-46a9-b506-602506cc356aToolmakerStevehttp://social.msdn.microsoft.com/Profile/en-US/?user=ToolmakerSteveFeature? Snap-Grid a flowchart visual to 10 pixels<p>Is there any way to control the dragging on flowchart designer, so elements will snap to some pixel multiple?  I like elements to line up...</p>Tue, 17 Nov 2009 21:15:03 Z2009-11-19T00:24:25Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/87e6c8ee-d8a8-40f5-b8ee-204f4da7e67chttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/87e6c8ee-d8a8-40f5-b8ee-204f4da7e67cToolmakerStevehttp://social.msdn.microsoft.com/Profile/en-US/?user=ToolmakerSteveWF4 still work the same with ActivityDesigner? FreeFormActivityDesigner?I am interested in extending and fully controlling the appearance of standard items such as CodeActivity, Sequence, and FlowChart. Before going into details about what I am trying to do, I want to understand the existing extension mechanisms. In searching web, I see references to ActivityDesigner and FreeFormActivityDesigner, with examples that sound related to what I want to do. However, those are older examples, before WF 4.0, so are they likely to still work similarly? Or are there modern examples for 4.0?Wed, 18 Nov 2009 19:34:07 Z2009-11-19T00:23:05Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/3fe482fc-7b45-48d8-b710-813a8386162bhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/3fe482fc-7b45-48d8-b710-813a8386162bToolmakerStevehttp://social.msdn.microsoft.com/Profile/en-US/?user=ToolmakerStevePractical to control ASP.NET AJAX-enabled application with WF4?Continuing my pushing on the (future?) possibility of using WF4 in situations where low-latency response is needed, here is a potential scenario that might be of more general interest than my game authoring scenario:<br/><br/>Consider an ASP.NET AJAX-enabled application. Not currently a likely fit to WF4, but exploring what it would take to make this work.<br/><br/>First, spec the server as having sufficient RAM and insuring that WF thread is given a good percentage of time, and that there is never more than 1/10 second delay between WF thread chunks of execution time. Limit number of open connections to the app to the number of active invokations WF4 allows. Would want to configure that to a number such as 200. Kick off a user if 5 minutes without response.<br/><br/>The point of including AJAX, is that it means that there may be fairly frequent events coming from the user, going to that user's stateful ASP.NET session.<br/><br/>The limited number of connections is to insure that the sessions don't have to be dehydrated. (Dehydrate if the user doesn't respond for 5 minutes; after that, they go through a log-in to get back to their session.  If at limit of concurrent users, they won't be able to log-in, or might be redirected to a different server with a lighter load.)<br/><br/>The question is whether WF4 could respond reliably, within 1/10 second or so, to each AJAX event. (Assume total load doesn't overload the server.)?<br/><br/>My sense from what I read now, is that is not the current expectation with WF. Stuff happens &quot;eventually&quot;, but that is all that is certain.<br/><br/>I'm trying to foster a discussion of &quot;low-latency&quot; scenarios, where it would be good to tune WF (and the available hardware and load) to be reliably responsive, at least most of the time.Tue, 17 Nov 2009 20:04:53 Z2009-11-19T00:20:30Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/5fbf7125-22d0-4fda-85ed-103c972d496fhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/5fbf7125-22d0-4fda-85ed-103c972d496fToolmakerStevehttp://social.msdn.microsoft.com/Profile/en-US/?user=ToolmakerSteveFeature Wish: Color-coded linesI would like to improve the readability of my flowcharts, by specifying that all links in to a given node be a particular color. (I'm mocking up a state machine, with lots of switches on event; multiple of those go to each state node. Can't actually execute this in WF4 and get the behavior I want, but it is what is on my mind.) Got particularly messy because every state shows a &quot;Reset&quot; link back to the start node.Tue, 17 Nov 2009 21:51:25 Z2009-11-18T20:55:25Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/12130019-f314-4121-b56b-94c383e13108http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/12130019-f314-4121-b56b-94c383e13108ToolmakerStevehttp://social.msdn.microsoft.com/Profile/en-US/?user=ToolmakerSteveCan a flowgraph have multiple exits?<p>I would like to break a complex graph into several subgraphs, to hide detail at the top level. But in the scenario I have in mind, this would be most effective if a nested flowchart could have several different exit points, each labeled. This happens because I have a switch statement with several lines out, but there is some other logic associated with the switch, that I would like to hide in the top level. Another way to think about this is that I am effectively making a custom switch activity, with an activity that executes before the switch expression (the logic sometimes changes the value to be switched on). The top level diagram ends up more readable, to a degree that surprised me, if I can include that logic &quot;inside&quot; each switch, instead of having a separate activity box in front of each switch. The result ends up looking similar to a state diagram, since all there is at the top is these &quot;custom switches&quot;, with labeled links between them.</p>Wed, 18 Nov 2009 00:02:51 Z2009-11-19T00:20:45Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/58be5a21-5163-49b7-81cf-0915c165b7d2http://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/58be5a21-5163-49b7-81cf-0915c165b7d2Pavan Kumar Chebroluhttp://social.msdn.microsoft.com/Profile/en-US/?user=Pavan%20Kumar%20Chebroluwhat are the Best Timespans to mention in the SQlWorkflowPersistenceService Constructor .__Can any suggest me what are the Best Timespans to mention in the SQlWorkflowPersistenceService Constructor means 10 sec,5sec,20 sec, or <br/> <br/> 1min,2min.......... <br/> <strong><br/> SqlWorkflowPersistenceService persistanceService = new SqlWorkflowPersistenceService(sqlTrackingConnection,true,new <span style="text-decoration:underline">TimeSpan(0, 0, 0, 10, 0), new TimeSpan(0, 0, 10, 10, 0));<br/> <br/> <br/> </span> </strong> Thanks in Advance...........<strong><span style="text-decoration:underline"></span> </strong>Wed, 18 Nov 2009 05:07:29 Z2009-11-19T06:15:11Zhttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/b7f09198-449e-4f7c-908c-284770f6a54chttp://social.msdn.microsoft.com/Forums/en-US/windowsworkflowfoundation/thread/b7f09198-449e-4f7c-908c-284770f6a54cRyan Vicehttp://social.msdn.microsoft.com/Profile/en-US/?user=Ryan%20ViceHow to deserialize rules from tracking data?<font> <p>I'm working on updating WorkflowMonitor to support rules which currently it will show red exclamation icons for any activity that uses a rule that display an error saying it can't find the rules. I've looked at the code and it is deserializing the workflow from the tracking data as shown here</p> <div style="border-right:#7f9db9 1px solid;border-top:#7f9db9 1px solid;font-size:11px;overflow:auto;border-left:#7f9db9 1px solid;line-height:100%! important;border-bottom:#7f9db9 1px solid;font-family:Courier New;background-color:white"> <table style="border-top-width:0px;border-left-width:0px;margin:2px 0px;width:99%;border-bottom:#eee 0px solid;border-collapse:collapse;background-color:#fff;border-right-width:0px" cellspacing=0 cellpadding=0> <colgroup> <col style="padding-left:10px;font-size:11px;border-bottom:#f7f7f7 1px solid;font-family:Courier New;white-space:nowrap"> <tbody> <tr> <td><font style="font-size:11px">                    Activity workflowDefinition <br>                        = sqlTrackingWorkflowInstance.WorkflowDefinition;  </font></td></tr> <tr> <td style="background-color:#f7f7f7">                    </font><font style="color:blue">if</font><font style="font-size:11px"> (</font><font style="color:blue">null</font><font style="font-size:11px"> != workflowDefinition)  </font></td></tr> <tr> <td>                        workflowViewHost.OpenWorkflow(workflowDefinition); </td></tr></tbody></table></div> <p>I also have this sample which shows adding the rules to the activity<br><br></p> <div style="border-right:#7f9db9 1px solid;border-top:#7f9db9 1px solid;font-size:11px;overflow:auto;border-left:#7f9db9 1px solid;line-height:100%! important;border-bottom:#7f9db9 1px solid;font-family:Courier New;background-color:white"> <table style="border-top-width:0px;border-left-width:0px;margin:2px 0px;width:99%;border-bottom:#eee 0px solid;border-collapse:collapse;background-color:#fff;border-right-width:0px" cellspacing=0 cellpadding=0> <colgroup> <col style="padding-left:10px;font-size:11px;border-bottom:#f7f7f7 1px solid;font-family:Courier New;white-space:nowrap"> <tbody> <tr> <td><font style="font-size:11px">                </font><font style="color:green">//deserialize a .rules file is one exists </font><font style="font-size:11px"> </font></td></tr> <tr> <td style="background-color:#f7f7f7">                String rulesFileName = GetRulesFileName(fileName);  </td></tr> <tr> <td>                </font><font style="color:blue">if</font><font style="font-size:11px"> (File.Exists(rulesFileName))  </font></td></tr> <tr> <td style="background-color:#f7f7f7">                {  </td></tr> <tr> <td>                    </font><font style="color:green">//read the .rules file </font><font style="font-size:11px"> </font></td></tr> <tr> <td style="background-color:#f7f7f7">                    </font><font style="color:blue">using</font><font style="font-size:11px"> (XmlReader xmlReader  </font></td></tr> <tr> <td>                        = XmlReader.Create(rulesFileName))  </td></tr> <tr> <td style="background-color:#f7f7f7">                    {  </td></tr> <tr> <td>                        WorkflowMarkupSerializer markupSerializer  </td></tr> <tr> <td style="background-color:#f7f7f7">                            = </font><font style="color:blue">new</font><font style="font-size:11px"> WorkflowMarkupSerializer();  </font></td></tr> <tr> <td>                        </font><font style="color:green">//deserialize the rule definitions </font><font style="font-size:11px"> </font></td></tr> <tr> <td style="background-color:#f7f7f7">                        RuleDefinitions ruleDefinitions  </td></tr> <tr> <td>                            = markupSerializer.Deserialize(dsm, xmlReader)  </td></tr> <tr> <td style="background-color:#f7f7f7">                                </font><font style="color:blue">as</font><font style="font-size:11px"> RuleDefinitions;  </font></td></tr> <tr> <td>                        </font><font style="color:blue">if</font><font style="font-size:11px"> (ruleDefinitions != </font><font style="color:blue">null</font><font style="font-size:11px">)  </font></td></tr> <tr> <td style="background-color:#f7f7f7">                        {  </td></tr> <tr> <td>                            </font><font style="color:green">//add the rules definitions to the workflow </font><font style="font-size:11px"> </font></td></tr> <tr> <td style="background-color:#f7f7f7">                            workflow.SetValue(  </td></tr> <tr> <td>                                RuleDefinitions.RuleDefinitionsProperty,  </td></tr> <tr> <td style="background-color:#f7f7f7">                                ruleDefinitions);  </td></tr> <tr> <td>                        }  </td></tr> <tr> <td style="background-color:#f7f7f7">                    }  </td></tr> <tr> <td>                } </td></tr></tbody></table></div> <p>but it's deseralizing the rules from a file. I'd like to be able to keep the monitor grabbing everything from the tracking data to keep things generic and avoid having to provide file paths or grabbing the .XML from DB.<br><br>Any help much appreciated...<br></font></p><hr class="sig">If my response answers your question, please mark it as the &quot;Answer&quot; by clicking that button above my post.Wed, 11 Mar 2009 20:32:14 Z2009-11-18T20:26:05Z