Changed Folder Order When Searching for Dependencies

Tags:

Starting from version 5.2, when there are dll files with the same names in the plugin folder and the SyrveFront application folder, the file from the plugin folder will be loaded.

This allows the plugin to use the same third-party libraries as the SyrveFront application (for example, log4net, Rx, Razor), using its own versions of these libraries and thus remaining independent of the internal workings of the SyrveFront application.

In versions prior to 5.2, priority was given to files from the SyrveFront folder, even if they had an incompatible version. When developing a plugin for the API V3 or V4, it is necessary to account for the possibility of version collisions between the third-party libraries used by both the plugin and the SyrveFront application, and either install its own versions of these libraries in the GAC, which has the highest priority when searching for dependencies, or register an event handler for AppDomain.AssemblyResolve to manually load the required libraries.

In case of issues, you can track how the library search proceeded and which file was ultimately loaded using the Fuslog utility.