所以我尝试使用.Net Core 2.0,现在使用Mono定位.NET 4.5。在这两种情况下,我都会收到错误
"类型提供者' FSharp.Data.Sql.SqlTypeProvider'报告错误:无法解析程序集。其中一个Npgsql.dll必须存在于路径中: /用户/ mgaff /地穴/测试/包装/ Npgsql的 /用户/ mgaff /隐窝/测试/包/ sqlProvider的/ lib中" 。我在VS Code中复制了dll的路径,并将其用作解析路径,但数据提供者却没有看到它。以下示例几乎是从https://fsprojects.github.io/SQLProvider/core/postgresql.html复制的。任何帮助都将不胜感激。感谢
let [<Literal>] dbVendor = Common.DatabaseProviderTypes.POSTGRESQL
let [<Literal>] connString = "Host=localhost;Database=mydb;User Id=mgaff;"
let [<Literal>] resPath =
@"/Users/mgaff/crypt/test/packages/Npgsql/lib/net45/"
let [<Literal>] indivAmount = 1000
let [<Literal>] useOptTypes = true
type sql =
SqlDataProvider<
dbVendor,
connString,
"", //ConnectionNameString can be left empty
resPath,
indivAmount,
useOptTypes>
答案 0 :(得分:1)
在.Net 4.5中检查Npgsql版本(tl; dr你应该使用3.1.10 - 请参阅https://github.com/fsprojects/SQLProvider/issues/373)和DLL架构(32位或64位)。
如上所述,某些类型提供程序在dotnet中无法正常工作。