【发布时间】:2019-05-22 09:39:39
【问题描述】:
尝试将 SQLTypeProvider 与 postgres 一起使用,运行时出现以下错误
dotnet build
错误 FS3033:类型提供程序“FSharp.Data.Sql.SqlTypeProvider” 报错:无法加载文件或程序集 'System.Runtime.CompilerServices.Unsafe,版本=4.0.4.0, 文化=中性,PublicKeyToken=b03f5f7f11d50a3a'。系统无法 找到指定的文件。 [/home/sashan/code/titan/src/Server/Server.fsproj]
我的数据提供者是这样的:
type SQL = SqlDataProvider<
ConnectionString = pg_dev_conn_string,
DatabaseVendor = Common.DatabaseProviderTypes.POSTGRESQL,
UseOptionTypes = true >
如果我将其更改为以下
type SQL = SqlDataProvider<
ConnectionString = pg_dev_conn_string,
DatabaseVendor = Common.DatabaseProviderTypes.POSTGRESQL,
ResolutionPath = "/home/sashan/code/dotnet/2.1.500/sdk/NuGetFallbackFolder/system.runtime.compilerservices.unsafe/4.5.1/lib/netcoreapp2.0",
UseOptionTypes = true >
错误消失了,但我不明白为什么。修复似乎真的很奇怪。为什么我必须将它指向我的项目之外的文件? System.Runtime.CompilerServices.Unsafe.dll 不应该位于编译器可以找到的项目子目录之一中吗?
【问题讨论】:
-
你解决过这个问题吗?我今天碰到了。我正在使用 macOS。谢谢
标签: c# visual-studio f# npgsql f#-data