Plugin Unsecure Configurations Made Easy

steps 300x225 Plugin Unsecure Configurations Made Easy

One of the more common use cases in Microsoft Dynamics 365 tends to be writing plugins and needing to pass parameters that the plugin code can use.

The traditional format to pass parameters has been XML that is pasted in the unsecure configuration. Parsing XML tends to be cumbersome and one ends up writing more code and spends more time maintaining that code rather than focusing on the business logic within the plugin. The question is: can we do any better?

Yes, there is a better way! The following process is what we tend to use to simplify this task:

Step 1

Build a class that contains the variables that you want to pass in through the unsecure configuration.

For the purposes of our example, our class definition looks like the screenshot below.

081517 2001 PluginUnsec1 Plugin Unsecure Configurations Made Easy

Step 2

Instantiate the object and serialize it. You could use JSON.NET or write your own. In either case, the serialized output will be similar to below.

081517 2001 PluginUnsec2 Plugin Unsecure Configurations Made Easy

Step 3

Paste the JSON in the unsecure config of your plugin step.

081517 2001 PluginUnsec3 Plugin Unsecure Configurations Made Easy

Step 4

In your plugin code, deserialize the JSON as follows

081517 2001 PluginUnsec4 Plugin Unsecure Configurations Made Easy

Code for the Deserialize method is below.

081517 2001 PluginUnsec5 Plugin Unsecure Configurations Made Easy

Sample code for the JsonHelper class was derived from this Microsoft article.

Step 5

Now you are free to use variables defined within the reserialized object as you need in your plugin code. Mission accomplished!

For additional information, check out the following blogs:

Comparison: Using Workflows vs. JavaScript vs. Plugins in Dynamics 365

Setting Output Parameters in Plugins for Custom Actions

Happy Dynamics 365’ing!

Let’s block ads! (Why?)

PowerObjects- Bringing Focus to Dynamics CRM