F#脚本:通过#I添加新目录

时间:2011-06-14 07:29:34

标签: f# f#-scripting

我怎样才能做到这一点?

#I (__SOURCE_DIRECTORY__ + @"\bin\Release")

第二个问题。是否可以做类似的事情:

let path = __SOURCE_DIRECTORY__ + @"\bin\Release"
#I path

1 个答案:

答案 0 :(得分:2)

你做不到。 #I和#r命令实际上是在fsi动态编译代码之前执行的预处理器指令,因此它们仅支持字符串文字。如果你考虑它,这是合乎逻辑的,因为引用的程序集可能需要编译代码。

但是,#r和#I命令始终将相对路径视为来自脚本位置,因此

#I @".\bin\Release"

应该可以正常工作(注意点以确保它是相对而非绝对路径)。

请注意,运行时相对路径来自fsi工作目录(通常是临时目录),因此在从脚本加载文件时需要使用__SOURCE_DIRECTORY__