我正在尝试在F#类库项目中使用FSharp.Data库(不是可移植类。我收到此错误:
测试'测试1'失败: OneTimeSetUp:System.MissingMethodException:找不到方法: ' FSharp.Data.CsvFile FSharp.Data.CsvFile.Load(System.String, Microsoft.FSharp.Core.FSharpOption
1<System.String>, Microsoft.FSharp.Core.FSharpOption
1, Microsoft.FSharp.Core.FSharpOption1<Boolean>, Microsoft.FSharp.Core.FSharpOption
1)&#39;
我用Google搜索了错误,发现了一些像这样的类似帖子
Using F# JsonProvider within a portable class library fails
但我不是一个可移植的类库只是一个普通的类库。如果我想在F#单元测试项目中使用FSharp.Data,我也会得到类似的错误。
任何建议将不胜感激。
仅供参考,我确实在我的类库和测试项目中安装了FSharp.Data以获取错误。
谢谢
我试图用FSharp.Data版本2.0.14到2.3.2将.net 4.5,4.5.2和F#4.3.1和4.4作为目标。我对任何组合都没有运气。
答案 0 :(得分:0)
感谢Mark和Panagiotis。我能够通过绑定重定向来解决这个缺少方法的问题。对于那些有类似问题的人,我做了以下几点:
将以下行(基于您的F#版本)添加到配置文件中:
<runtime>
<legacyUnhandledExceptionPolicy enabled="true" />
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity
name="FSharp.Core"
publicKeyToken="b03f5f7f11d50a3a"
culture="neutral"/>
<bindingRedirect
oldVersion="0.0.0.0 - 4.4.0.0"
newVersion="4.4.0.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
确保在较新的
我必须使用带有nunit的TestDriven / test来启动nunit窗口,因为VS测试资源管理器仍然无法发现测试用例。