Windows Workflow Foundation 3
How do you load XOML only State Workflow in WFPad for WWFBeta 2.2 (with namespace for codebehind assembly, and activities)?
Tom, I have downloaded WWF Beta 2.2 WFPad. I am able to work with simple workflows, but am unable to load the XOML only State workflow you created. Can you please create an example of how to load XOML only workflow using namespace (instead of x:Class attribute in the root tag) and not having to change ns0:BaseOrderWorkflow to StateMachineWorkflowActivity in the root node and not having problems displaying activities that are referenced in the xoml with namespace references, such as: <ns1:BagTagAct x:Name="bagTagActivity" mResultsReport="{ActivityBind XOMLBagTagWorkflow,Path=ResultsReport}" mFileName="{ActivityBind XOMLBagTagWorkflow,Path=FileName}" mResultsC1Report="{ActivityBind XOMLBagTagWorkflow,Path=ResultsC1Report}" mReportName="{ActivityBind XOMLBagTagWorkflow,Path=ReportName}" mResultMessage="{ActivityBind XOMLBagTagWorkflow,Path=ResultsMessage}" mDataIn="{ActivityBind XOMLBagTagWorkflow,Path=DataIn}" mResultsData="{ActivityBind XOMLBagTagWorkflow,Path=ResultsData}" /> <ns2:ADPWSSendEmail toA="{ActivityBind XOMLBagTagWorkflow,Path=EmailCreatedSendEmailActivity_ToEmail}" x:Name="BagTagFirstConfirmPrintEmailActivity" subj="{ActivityBind XOMLBagTagWorkflow,Path=EmailCreatedSendEmailActivity_EmailSubject}" name="{ActivityBind XOMLBagTagWorkflow,Path=EmailCreatedSendEmailActivity_FromName}" Description="Sends email that Creation of Bag Tag is starting." body="Successfully Printed BagTag as a PDF file." fromA="{ActivityBind XOMLBagTagWorkflow,Path=EmailCreatedSendEmailActivity_FromEmail}" xfilepath="{x:Null}" /> ? I can load the XOML only workflow in the WWFPad 2.2, but cannot display the namespace referenced activities (and have to make the xoml changes as specified above). I look forward to your reply. Thanks in advance, John Portnov
Where did you download WFPad for Beta 2.2 from? I see that Mark upgraded WFPad to Beta 2, but couldn't find a Beta 2.2 version. In order to display custom activities WFPad needs a reference to the assembly that it is contained in and I don't see any way to do that from any of the menus.
Where did you download WFPad for Beta 2.2 from? I see that Mark upgraded WFPad to Beta 2, but couldn't find a Beta 2.2 version. In order to display custom activities WFPad needs a reference to the assembly that it is contained in and I don't see any way to do that from any of the menus.
Tom, I am sorry. I was talking about the Workflow Re-hosting tool (which allows you to modify xoml). http://wf.netfx3.com/files/folders/design_time/entry1923.aspx Vihang's tool is supposed to allow you to update and compile workflows. I would like to do that with xoml workflow (without having to add x:Class attribute to the root node; and without having to remove the namespace reference to the assembly being used. I also do not want to rename the root node to StateMachineWorkflowActivity.) I would like to be able to load the following workflow xoml and be able to update it (using the existing referenced namespaces). Below is the xoml contents: ------------------------------------------ <ns0:BaseOrderWorkflow x:Name="XOMLBagTagWorkflow" EmailCreatedSendEmailActivity_ToEmail="{x:Null}" EmailCreatedSendEmailActivity_EmailBody="{x:Null}" EmailCreatedSendEmailActivity_FromEmail="{x:Null}" EmailCreatedSendEmailActivity_EmailSubject="{x:Null}" EmailCreatedSendEmailActivity_FromName="{x:Null}" MRSchedule="{p1:Null}" CompanyCode="{p1:Null}" ToEmail="{p1:Null}" ToEmailManager="{x:Null}" EmailSubject="{x:Null}" RegionID="{x:Null}" ResultsMessage="" EmailBody="{x:Null}" ResultsC1Report="{x:Null}" ToEmailAdmin="{x:Null}" FromName="{x:Null}" DynamicUpdateCondition="{x:Null}" FromEmail="{x:Null}" ReportName="{x:Null}" LocationID="{x:Null}" DataIn="{x:Null}" ResultsReport="{x:Null}" InitialStateName="WaitingForBagTagState" FileName="{x:Null}" ResultsData="{x:Null}" CompletedStateName="BagTagCompletedState" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/workflow" xmlns:ns1="clr-namespace:BagTagActivity;Assembly=BagTagActivity, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" xmlns:ns2="clr-namespace:ADPSendEmail;Assembly=ADPSendEmail, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:p1="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:ns0="clr-namespace:iServeWorkflows;Assembly=iServeWorkflows, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null"> <StateActivity x:Name="WaitingForBagTagState"> <EventDrivenActivity x:Name="BagTagCreatedEvent"> <HandleExternalEventActivity Invoked="{ActivityBind XOMLBagTagWorkflow,Path=BagTagCreated_Invoked}" x:Name="BagTagCreatedHandleExternalActivity" EventName="BagTagCreated" InterfaceType="{x:Type p11:IOrderService,TypeName=OrderLocalServices.IOrderService}" xmlns:p11="clr-namespace:OrderLocalServices;Assembly=iServeWorkflows, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null" /> <IfElseActivity x:Name="CheckSourceEmail"> <IfElseBranchActivity x:Name="ifValidSender"> <IfElseBranchActivity.Condition> <RuleConditionReference ConditionName="Condition1" /> </IfElseBranchActivity.Condition> <CodeActivity x:Name="ValidSenderEmailAddress" ExecuteCode="{ActivityBind XOMLBagTagWorkflow,Path=ValidSender}" /> </IfElseBranchActivity> <IfElseBranchActivity x:Name="ifInvalidSender"> <CodeActivity x:Name="InvalidSenderEmailAddress" ExecuteCode="{ActivityBind XOMLBagTagWorkflow,Path=InvalidSender}" /> </IfElseBranchActivity> </IfElseActivity> <ns2:ADPWSSendEmail toA="{ActivityBind XOMLBagTagWorkflow,Path=EmailCreatedSendEmailActivity_ToEmail}" x:Name="BagTagInitializeEmailActivity" subj="{ActivityBind XOMLBagTagWorkflow,Path=EmailCreatedSendEmailActivity_EmailSubject}" name="{ActivityBind XOMLBagTagWorkflow,Path=EmailCreatedSendEmailActivity_FromName}" Description="Sends email that Creation of Bag Tag is starting." body="Starting to print the BagTag. Hope this works." fromA="{ActivityBind XOMLBagTagWorkflow,Path=EmailCreatedSendEmailActivity_FromEmail}" xfilepath="{x:Null}" /> <SetStateActivity x:Name="BagTagSetPrintStateActivity" TargetStateName="PrintBagTagState" /> </EventDrivenActivity> </StateActivity> <StateActivity x:Name="PrintBagTagState"> <EventDrivenActivity x:Name="PrintBagTagEvent"> <HandleExternalEventActivity Invoked="{ActivityBind XOMLBagTagWorkflow,Path=PrintBagTag_Invoked}" x:Name="BagTagApprovedHandleExternalActivity" EventName="PrintBagTag" InterfaceType="{x:Type p11:IOrderService,TypeName=OrderLocalServices.IOrderService}" xmlns:p11="clr-namespace:OrderLocalServices;Assembly=iServeWorkflows, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null" /> <ns1:BagTagAct x:Name="bagTagActivity" mResultsReport="{ActivityBind XOMLBagTagWorkflow,Path=ResultsReport}" mFileName="{ActivityBind XOMLBagTagWorkflow,Path=FileName}" mResultsC1Report="{ActivityBind XOMLBagTagWorkflow,Path=ResultsC1Report}" mReportName="{ActivityBind XOMLBagTagWorkflow,Path=ReportName}" mResultMessage="{ActivityBind XOMLBagTagWorkflow,Path=ResultsMessage}" mDataIn="{ActivityBind XOMLBagTagWorkflow,Path=DataIn}" mResultsData="{ActivityBind XOMLBagTagWorkflow,Path=ResultsData}" /> <ns2:ADPWSSendEmail toA="{ActivityBind XOMLBagTagWorkflow,Path=EmailCreatedSendEmailActivity_ToEmail}" x:Name="BagTagFirstConfirmPrintEmailActivity" subj="{ActivityBind XOMLBagTagWorkflow,Path=EmailCreatedSendEmailActivity_EmailSubject}" name="{ActivityBind XOMLBagTagWorkflow,Path=EmailCreatedSendEmailActivity_FromName}" Description="Sends email that Creation of Bag Tag is starting." body="Successfully Printed BagTag as a PDF file." fromA="{ActivityBind XOMLBagTagWorkflow,Path=EmailCreatedSendEmailActivity_FromEmail}" xfilepath="{x:Null}" /> <SetStateActivity x:Name="BagTagApprovedSetStateActivity" TargetStateName="BagTagCompletedState" /> </EventDrivenActivity> </StateActivity> <StateActivity x:Name="BagTagCompletedState" /></ns0:BaseOrderWorkflow> ---------------------------------------------------------------------- Sorry for the confusion. Thanks in advance. Sincerely, John Portnov
Related Links
EnqueueItem for transactional delivery of data
WorkFlowRuntime with events (ASp.Net)
Workflow on the fly
Windows Workflow and ASP.Net
State Machine "Undo" to previous state
Bind workflow property to a read-only activity property
Developing an application for a service support provider.
WorkflowRuntime.CreateWorkflow Performance
Access sequential workflow dependency property from custom activity
Access to workflow queues from external processes
Persiste in a custom activity
Workflow re-activates on Final State when using OnWorkflowItemChanged Event
Windows WorkFlow Foundation: Cannot add a new state in between two existing states.
Within VS2008, can't drill down into a workflow without checking it out
SQLTrackingService tracks incorrect WorkflowInstanceEvent order?
XAML Workflows, Property Bindings and Conditions sample