In Workflow Studio, you have the option to debug your designed workflows using either the CLR Debugger or Visual Studio. Debugging is a crucial step that allows you to examine your workflow code, observe its outcomes, and identify any potential issues.
This article will guide you through the process of debugging a workflow using Visual Studio, enabling you to efficiently troubleshoot and refine your workflow for optimal performance and reliability.
To debug a workflow
Compile and publish the workflow you wish to debug to the Workflow Server and restart the Web Role Service. In our example, we debug a test workflow that moves a user mailbox.
Start Visual Studio and from the File menu, select Open > File, navigate to "
C:\Users\<YourUserFolder>\AppData\Local\EmpowerID\DataCommon\CompilerTemp
," select the .cs file for the workflow you want to debug, and click Open.From the CompilerTemp folder, select the .cs file for the Workflow you want to debug and then click Open.
Click No on the Inconsistent Line Ending dialog that appears.
From the Debug menu of Visual Studio, click on the Exceptions menu item, select the Thrown and User-unhandled options for Common Language Runtime Exceptions, and then click OK.
From the Debug menu of Visual Studio, click on the Attach to Process menu item, select all w3wp.exe processes in the Available Processes pane and then click Attach.
From the cs file for the workflow, place a breakpoint in the code editor where desired. In our example, we place a breakpoint beside the method that is called when the workflow reaches the SelectMailbox lookup (GetTargetMailbox).
Run the workflow. When the workflow process reaches the breakpoint placed in the .cs file, the process will stop, allowing you to step through the code and observe what is occurring from Visual Studio.
If you make changes to the source code for the workflow, be sure to republish the workflow. Otherwise, the symbols used when debugging will not match.