如何添加第三方dll引用到F#项目?

时间:2012-02-07 09:06:19

标签: f# f#-interactive

我正在为我的F#项目添加第三方dll引用。我在引用中添加了dll,当我使用它时,突出显示代码并执行Alt + Ent,我得到错误“命名空间或模块'AZROLESLib'未定义。”我错过了一些东西。

3 个答案:

答案 0 :(得分:14)

简而言之,您必须使用#r "/path/to/AZROLESLib.dll"才能使F#Interactive识别并加载dll文件。

添加dll引用有助于Visual Studio在编译项目时找到正确的库,但它与F#Interactive无关。因此,您必须使用#r指令指向AZROLESLib.dll。如果VS有一些麻烦突出代码, 您可能需要打开dll文件中的确切模块:

open AZROLESLibModule

如果代码位于*.fs文件中,您可能希望区分使用fsi和使用fsc

#if INTERACTIVE
#r "/path/to/AZROLESLib.dll"
#endif

答案 1 :(得分:0)

对于某些事情,您可以直接通过名称调用它们而没有路径

#r "EnvDte"
例如,

适用于vs2013

答案 2 :(得分:0)

在我的情况下,我的F#项目正在引用C#DLL,但是在执行“ open MyModule”时遇到相同的问题,“未定义名称空间或模块'MyModule'。”

解决方案是编辑设置以使用相同的框架(一个使用4.5,另一个使用4.0)。