我在DotNetCore2.2中有一个f#项目,有以下依赖项。
<PackageReference Include="Expecto" Version="8.12.0" />
<PackageReference Include="FSharp.Data" Version="3.3.2" />
<PackageReference Include="FSharp.Data.SqlClient" Version="2.0.5" />我可以在本地构建和运行这个程序,没有任何问题。但是,当试图在蔚蓝管道上构建这个程序时,我会得到以下错误。
error FS3033: The type provider 'FSharp.Data.SqlCommandProvider' reported an error: Could not load file or assembly 'System.Data.SqlClient, Version=4.4.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. Reference assemblies should not be loaded for execution. They can only be loaded in the Reflection-only loader context.
我试着添加System.Data.SqlClient包。但还是不起作用。
<PackageReference Include="Expecto" Version="8.12.0" />
<PackageReference Include="FSharp.Data" Version="3.3.3" />
<PackageReference Include="FSharp.Data.SqlClient" Version="2.0.6" />
<PackageReference Include="SQLProvider" Version="1.1.26" />
<PackageReference Include="System.Data.SqlClient" Version="4.5.1" />当我尝试添加System.Data.SqlClient Version="4.4.0“时,会在本地得到以下错误
Detected package downgrade: System.Data.SqlClient from 4.5.1 to 4.4.0. Reference the package directly from the project to select a different version. ElbBazarApiComponentTest -> FSharp.Data.SqlClient 2.0.6 -> System.Data.SqlClient (>= 4.5.1) ElbBazarApiComponentTest -> System.Data.SqlClient (>= 4.4.0) ElbBazarApiComponentTest F:\ElbBazar\ElbBazarApi\ElbBazarApiComponentTest\ElbBazarApiComponentTest.fsproj
我不知道还能做什么。
发布于 2020-02-24 08:57:38
无法在Azure管道上建设F#项目
根据错误消息:
Could not load file or assembly. Reference assemblies should not be loaded for execution. They can only be loaded in the Reflection-only loader context.它声明不能加载文件或程序集,而不能找到文件或程序集。
此外,当我们检查nuget包FSharp.Data.SqlClient时,它有依赖关系:

因此,错误的原因不是我们丢失了引用System.Data.SqlClient,而是我们无法加载它。
AFAIK,有关于它的github问题,您可以检查这个解决方案是否适合您,使用MSBuild而不是dotnet来构建这个项目。
希望这能有所帮助。
https://stackoverflow.com/questions/60363652
复制相似问题