What happends when loading multiple assemblies in 1 application with different target frameworks

13 views Asked by At

We have quite an extensive C# application with the ability to load and unload assemblies on-the-go to support plugin functionality by loading extra assemblies.

Now we are transitioning from .net framework 4.0 to 4.8. I'm working on one of said plugins and we are going to be the first to have the opportunity to upgrade.

So i've tested this, upgrading all our assemblied. Installing the 4.8 runtime and booting the application (which still targets 4.0) and then loading our (4.8) assemblies. This seemed to work quite well. At first i got one error on a ToString method where an overload couldn't be found but that was due to me not having installed the 4.8 runtime yet.

After i did that everything looked good. So, i'm wondering, what exactly happends under the hood? Are the 4.8 assemblies run in a 4.0 runtime? are they being run on a 4.8 runtime and the 4.0 assemblies are still being run in the 4.0 runtime? how does this work?

0

There are 0 answers