# Considerations when deploying a custom assembly SDK workflow application

**URL:** <https://discuss.workflowgen.com/t/considerations-when-deploying-a-custom-assembly-sdk-workflow-application/488>\
**Category:** Workflow Applications\
**Created:** [April 16, 2016, 2:22am UTC](https://discuss.workflowgen.com/t/considerations-when-deploying-a-custom-assembly-sdk-workflow-application/488 "2016-04-16T02:22:04Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![wfg-admin](https://yyz2.discourse-cdn.com/flex030/user_avatar/discuss.workflowgen.com/wfg-admin/32/714_2.png) [@wfg-admin](https://discuss.workflowgen.com/u/wfg-admin)\
**Post date:** [April 16, 2016, 2:22am UTC](https://discuss.workflowgen.com/t/considerations-when-deploying-a-custom-assembly-sdk-workflow-application/488/1 "2016-04-16T02:22:04Z")

</div>

This article will discuss some considerations when deploying a custom assembly SDK workflow application in WorkflowGen, namely the assembly location, the reference to WorkflowGen.My, and the reference to other software libraries.

### Assembly location

There are two ways of deploying an assembly file in WorkflowGen:

**Method 1: Reference by assembly’s full name**

The assembly file must be copied to the three bin folders containing the WorkflowGen executable files: `\wfgen\bin`, `\wfgen\ws\bin`, and `DRIVE:\Program Files\Advantys\WorkflowGen\Services\bin`.

**Method 2: Reference by assembly’s path (full physical path with file name)**

The assembly file can be copied to a custom folder such as `DRIVE:\MyWorkflowApps\Assembly.dll`, and then use that specific path in the workflow application’s definition.

### Reference to WorkflowGen.My

**WorkflowGen.My v3.1.0 and earlier**

WorkflowGen.My versions 3.1.0 and earlier are strong-named, which means your assembly must be built with and use the same version as your target WorkflowGen. This requires recompiling your assembly whenever you upgrade WorkflowGen to a newer version.

You can use one of the following workarounds to overcome this requirement:

1. Install the required WorkflowGen.My version in the system's Global Assembly Cache (GAC). For instructions on how to do this, see [https://msdn.microsoft.com/en-us/library/dkkx7f79(v=vs.110).aspx](https://msdn.microsoft.com/en-us/library/dkkx7f79(v=vs.110).aspx).  
  
OR  
  
2. Add a delegate to handle the assembly resolve event in order to load the current WorkflowGen.My version. For instructions on how to do this, see the [How to add an assembly resolve event delegate to overcome WorkflowGen.My dependency issue when deploying custom assembly SDK workflow application](https://discuss.workflowgen.com/t/how-to-add-an-assembly-resolve-event-delegate-to-overcome-workflowgen-my-dependency-issue-when-deploying-custom-assembly-sdk-workflow-application/330) topic.  
  
OR  
  
3. Add a web configuration setting to redirect the required version to the current version of WorkflowGen.My. For more information, see [https://msdn.microsoft.com/en-us/library/twy1dw1e(v=vs.110).aspx](https://msdn.microsoft.com/en-us/library/twy1dw1e(v=vs.110).aspx).

**Note:** If your assembly is built with WorkflowGen.My v3.1.0 or earlier, it can be used in WorkflowGen version 6.2.0 and later if one of the above workarounds has been implemented.

**WorkflowGen.My v3.2.0 and later**

As of version 3.2.0, WorkflowGen.My is no longer strong-named in order to allow non-specific version dependency when referenced by your assembly. You can simply deploy your assembly file using one of the two methods in the **Assembly location** section above in WorkflowGen 6.2.0 and later.

**Note:** If your assembly is built with WorkflowGen.My v3.2.0 or later, it can be used in WorkflowGen versions prior to 6.2.0 if you have implemented **either workaround 2 or 3** above.

### Reference to other software libraries

If your assembly uses third-party libraries, then these must also be deployed into the three WorkflowGen executable `\bin` folders. Alternatively, they can be installed into the system’s Global Assembly Cache (GAC) if they are strong-named assemblies.
