我有一个使用 .net Standard 2.0 构建的软件包。我想在 .net Framework 和 .net Core 应用程序中都能使用它,但是它有以下代码行:
using System.Runtime.Loader;
…
AssemblyLoadContext.Default.Unloading += (ctx) => ProcessStop();
…
这对于 .net Framework 不起作用(似乎 System.Runtime.Loader 是仅限核心的包)。我可以使用以下语句在编译时省略它:
#if NETCOREAPP2_0 || NETCOREAPP2_1
AssemblyLoadContext.Default.Unloading += (ctx) => ProcessStop();
#endif
在 .net Framework 中使用已编译的包时,这并不能帮到我。有没有人知道如何在代码中实现此类操作呢?
提前感谢任何指导!