我使用Assembly.LoadFrom加载自定义dll,但其中一个dll是在我的项目解决方案中维护的,并随应用程序一起提供。
问题在于,每次我尝试构建项目时,都会收到一条错误消息,说它无法将新编译的dll复制到旧版本上,因为它正被另一个进程使用。
处理此问题的最佳方法是什么?想到的两个想法是:
这两种解决方案都很容易实现,但如果有一种快速/简单的方法不需要我更改我的代码,我会更喜欢它。
编辑:我不需要在运行时卸载程序集。当程序ENDS时,我需要它释放它对dll文件的锁定。我完全了解AppDomains如何工作以及将插件加载到他们自己的AppDomain中的优点,但对于这个特定的应用程序,我不这样做。