从F#交互环境中卸载/取消引用一个已引用的程序集

7

F# Interactive (fsi.exe)有一个指令来引用给定的程序集:

>#help;;
   [...]
   #r "file.dll";;        Reference (dynamically load) the given DLL
   [...]

我经常喜欢卸载/取消引用之前已引用的程序集,以便重新编译它们。这可行吗?
编辑:我正在 MacOSX 和 Mono 下运行 fsi - 应该与在 Windows 下命令行相同。

如果使用常规的Assembly.Load加载,那么我猜不行:http://blogs.msdn.com/suzcook/archive/2003/07/08/57211.aspx - Mauricio Scheffer
看起来不太乐观...但还是谢谢。 - Johan Kullbom
除非FSI实现非常幼稚,否则所有动态装配加载都将在沙盒化的AppDomain中执行,该域可以被卸载。但是,您无法卸载单个程序集。 - Robert Jeppesen
1个回答

4
您可以右键单击并选择“重置会话”。但显然,这将清除所有内容,而不仅仅是您的引用。

我使用的是MacOSX和Mono,所以我没有其他选择......但看起来你是对的——重置会话是唯一的解决办法...... :( - Johan Kullbom
#quit;; 将停止会话,允许您按Enter键重新启动会话。 - Robert Jeppesen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接