Xamarin Studio 中的错误消息:不允许多次引用 FSharp.Core.dll

Error message in Xamarin Studio: Multiple references to FSharp.Core.dll are not permitted

当我在 Xamarin Studio 中设置新的 F# 项目并引用 Suave 时出现错误。

重现错误消息的步骤如下:

  1. 在 Xamarin Studio 6 中创建一个新解决方案。类型:F# 中的控制台项目
  2. 添加 Suave nuget 包:Suave 1.1.2
  3. 打开 Program.fs 并在文件顶部添加此行:'open Suave'

在此之后 'open' 这个词用红色波浪线装饰,当我将鼠标指针移到它上面时,会出现一个小弹出消息:

Error: Multiple references to 'FSharp.Core.dll' are not permitted

为什么会出现此错误消息,我该如何删除它?

我注意到 Suave nuget 包的安装也导致了 FSharp.Core nuget 包的安装。这是生成的 packages.conf 文件:

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="FSharp.Core" version="3.1.2.5" targetFramework="net45" />
  <package id="Suave" version="1.1.2" targetFramework="net45" />
</packages>

发生这种情况是因为 Xamarin 的 F# 项目模板默认引用 FSharp.Core 的本地副本。

删除(重复的)引用应该可以解决问题。

如果项目包含对 NuGet 版本的引用,我刚刚更新了 Xamarin Studio 以忽略 FSharp.Core 的本地副本。应该在 XS 6.1 周期 8 中发布。