如何在VS 2015中使用FSharp.Data?

8
我正在尝试在FSharp项目的脚本文件中使用FSharp.Data,并且我收到的错误是:
“警告'..\packages\FSharp.Data.2.2.5\lib\net40\FSharp.Data.dll'不是一个有效的程序集名称。”
来自https://www.nuget.org/packages/FSharp.Data/的FSharp.Data
如果我尝试使用.NET 4.0、.NET 4.5或.NET 4.6的F#项目,问题也是一样的。
编辑:使用“..\packages\FSharp.Data.2.2.5\lib\portable-net40+sl5+wp8+win8\FSharp.Data.dll”可以正常工作,但是这个便携式版本只支持web位置。

我在VS 2015中使用net40版本没有遇到任何问题。你能发一下你的确切代码吗?(所有内容都被正确转义了吗?相对路径是否正确?) - Tomas Petricek
没有代码,只有使用汇编的一行代码。 #r "..\packages\FSharp.Data.2.2.5\lib\net40\FSharp.Data.dll" 我在使用VS 2012实例时遇到了相同的错误。我想也许这是我的.NET或VS实例的问题。 - J. Lennon
2
那仍然是代码 :) - Tomas Petricek
1个回答

9

我认为问题在于字符串转义。在以下代码中:

#r "..\packages\FSharp.Data.2.2.5\lib\net40\FSharp.Data.dll"

\n被解释为换行符,所以它是无效的。但在下面的例子中:

#r "..\packages\FSharp.Data.2.2.5\lib\portable-net40+sl5+wp8+win8\FSharp.Data.dll"

在字符串中没有特殊的转义序列。以下两种方式都应该有效:

#r @"..\packages\FSharp.Data.2.2.5\lib\net40\FSharp.Data.dll"
#r "..\\packages\\FSharp.Data.2.2.5\\lib\\net40\\FSharp.Data.dll"

我简直不敢相信这竟然发生了。当无法找到程序集时,应该显示的正确错误是:错误 未找到或无效的程序集引用“SomethingThatDoesntExist.dll”。这就是为什么我认为可能会有其他问题的原因。 - J. Lennon
1
是的,这个错误消息真的很糟糕。请在https://github.com/Microsoft/visualfsharp/上提出问题并发送拉取请求! - Tomas Petricek
2
FSI 也支持 / - CaringDev

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