Handling Custom .DLL Files
  • 27 Jan 2022
  • 1 Minute to read
  • Dark
    Light

Handling Custom .DLL Files

  • Dark
    Light

Article Summary

Overview

Version 7.x .NET Architecture Change

To understand how to add custom code to the platform, developers should be well acquainted with an integrated development environment (IDE) and on building Class Libraries in .NET Core.

This article details how to add, update, and delete a custom .dll file into a Decisions environment.

If experiencing issues with a custom .dll, refer to the Troubleshooting a Custom .DLL File article for further information.


Uploading a Custom .DLL File

This example will demonstrate how to add the .dll file created from a compiled .NET Core project. The following method will be used in this example.

public static double GetSimpleInterest(decimal interest, int termInYears, double principal) {

            return principal * (double)interest * termInYears;

        }


  1. After compiling the code in a .NET Core project, navigate to where the .dll Class Library file is located and copy the file.
  2. Navigate to C:\Program Files\Decisions\Decisions Server\modules\Decisions.Local\CoreServicesDlls and paste the file to this folder.


  3. Restart the Decisions Server.
  4. In the Toolbox panel of the Flow Designer, navigate to INTEGRATION > .NET LIBRARIES > [CLASS LIBRARY NAME] > [CLASS]to find the step that was created from the compiled method.
    Steps that are not categorized when using the SDK will be displayed under the .NET Libraries category. To learn more about creating and customizing steps, see SDK: Flow Steps (Basic) and SDK: Flow Steps (Advanced)


Resetting or Removing a Custom .DLL

This tutorial demonstrates how to reset local Module .dlls for removal and/or update custom .dlls using the Decisions.LocalModuleReset.exe tool. 

Decisions stores custom DLLs in the database so a High Availability Cluster can apply these .dlls files to all nodes within the cluster without having to apply the .dlls manually to all servers within that cluster. 

On startup, any custom DLL in the C:\Program Files\Decisions\Decisions Server\modules\Decisions.Local\CoreServicesDlls

  1. Stop the Decisions Server service located in Windows Local Services.

  2. Navigate to C:\Program Files\Decisions\Decisions Services Manager\modules\Decisions.Local\CoreServicesDlls. After the Decisions Server service stops, move the desired dll into the Deleted directory.
    This directory prevents Decisions from re-loading the dll when the Decisions service starts.

  3. Run the Decisions.LocalModuleReset.exe tool as an Administrator located in C:\Program Files\Decisions\Decisions Server. This tool is created during default installation.

  4. After the tool finishes running, start the Decisions Server service to successfully remove the custom dll.




Was this article helpful?