关于C#中动态加载程序集文件后无法解除占用的说明

最近在使用“Assembly.LoadFile(string path)”加载程序集文件时发现无法正常释放资源,文件一直被占用,一定要关闭主调程序后才能解除文件占用。
经测试,可以改用“Assembly.Load(byte[] rawAssembly)”方法加载程序集,这样就不占用程序集文件了。

byte[] rawAssembly = File.ReadAllBytes(path);
Assembly assembly = Assembly.Load(rawAssembly);

发表评论