Dear community,
we use a custom tool written in C# and using the Dynamics SDK to deploy plugin assembly binaries to our Dynamics dev environment (on-premise, IsolationMode "None", SourceType "Database").
The tool simply updates the PluginAssembly entity, like:
var context = new ServiceContext(service); var pluginAssembly = context.PluginAssemblySet.Single(pa => pa.Name == "testpluginassembly"); var upd = new PluginAssembly() { Id = pluginAssembly.Id, Content = Convert.ToBase64String(File.ReadAllBytes("testpluginassembly.dll")), Description = "test plugin assembly" }; service.Update(upd);
Note: The plugin assembly is alread present in the dev environment, as well as registered plugins, sdk message processing steps and images.
This technique used to work fine in previous Dynamics versions: After updating the PluginAssembly, the Dynamics server recognized the change and automatically reloaded the plugin assembly in IIS. The changes were effective immediately.
However, in 9.1.0007.0005 version of Dynamics 365 we need to manually restart IIS (or recycle the CRMAppPool) in order to force the Dynamics server to actually reload the plugin assembly. Otherwise the old version of the plugin assembly remains active for minutes to hours and even days.
We tried to increase the plugin assembly version number, however without any effect.
Do you know how to fix this?
Thanks and best regards,
Johannes.