我正在尝试在f#项目中使用Xplot.Plotly适用于Mac的Visual Studio。当我调试时,我得到
"Could not load file or assembly
'FSharp.Core, Version=4.7.0.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.
如果运行dotnet,我将获得:
Unhandled exception.
Cannot print exception string because Exception.ToString() failed.
项目文件参考如下
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp3.1</TargetFramework>
</PropertyGroup>
<ItemGroup>
<Compile Include="Program.fs" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="MathNet.Numerics.FSharp" Version="4.9.1" />
<PackageReference Include="XPlot.Plotly" Version="3.0.1" />
<PackageReference Include="FSharp.Core" Version="4.7.1" />
</ItemGroup>
</Project>
我不清楚为什么VS显示4.5.2而不是4.7.0.0?
我还尝试过将Fsharp.core.dll版本4.7.0.0明确移动到bin目录。从控制台得到的结果是相同的。如果我通过Visual Studio Fsharp.core.dll运行,则4.7.0.0版本将被4.5.2.0覆盖,并以与上述相同的方式失败。
[当前,VS for Mac需要Mono,Mono已锁定为F#4.5,并且在加载.NET Standard 2.0组件时遇到许多其他麻烦。最终,VS for Mac将被更新,它将支持加载更高版本的F#编译器和FSharp.Core。