【发布时间】:2016-09-21 19:34:08
【问题描述】:
我有一个便携式库,其FSharp.Core 版本是3.7.4.0。安装(在单元测试项目中)FsUnit 作为依赖项安装FSharp.Core 版本3.1.2.5。
因此,在我的单元测试项目中使用可移植库的功能,例如:
module StammaTests.PieceTests
open Stamma
open NUnit.Framework
open FsUnitTyped
[<Test>]
let ``Testing a Basic function`` () =
Piece.toChar Black King |> shouldEqual 'k'
产生错误:
结果消息:System.IO.FileLoadException:无法加载文件或程序集'FSharp.Core,版本=3.7.4.0,文化=中性, PublicKeyToken=b03f5f7f11d50a3a' 或其依赖项之一。这 定位程序集的清单定义与程序集不匹配 参考。 (HRESULT 异常:0x80131040)
尝试将 FSharp.Core 版本从 NuGet 更新到 4.0.0.1(甚至在更新时检查两个项目),现在甚至是一些简单的东西,例如:
[<Test>]
let ``Testing the test`` () = 1 |> shouldEqual 1
不起作用,出现类似的错误。
结果消息:System.IO.FileLoadException:无法加载文件或 程序集'FSharp.Core,版本=4.3.1.0,文化=中性, PublicKeyToken=b03f5f7f11d50a3a' 或其依赖项之一。这 定位程序集的清单定义与程序集不匹配 参考。 (HRESULT 异常:0x80131040)
并且第一次失败测试的错误没有改变。
我觉得我错过了一些非常明显的东西,我发现几个人有类似的问题,但我不明白他们做了什么来解决它(他们似乎都解决了它..)例如this one .
编辑
这两个项目都是库,我没有要添加任何内容的 app.config 文件。
【问题讨论】: