2009-09-01 257 views
6

.NET程序集的参考的东西,如加载一个程序集的引用后:如何卸载IronPython中

import clr 
clr.AddRferenceToFileAndPath(r'C:\foo.dll') 

我怎么能再次卸载组件?

为什么有人想要这样做?因为我正在重新编译foo.dll并且想重新加载它,但编译器给我一个大惊小怪,因为IronPython已经在访问foo.dll

回答

5

.NET本身不支持仅卸载一个程序集。相反,您需要卸载整个AppDomain。我不确切知道IronPython如何与AppDomain合作,但这是.NET正常的做事方式。 (将程序集加载到新的AppDomain中,使用它,丢弃AppDomain,使用新版本的文件创建新的AppDomain等。)