3

我有一个 F# 库项目(非便携式库),代码如下:

   let db = new ApiaryProvider<"themoviedb">("http://api.themoviedb.org")
   db.AddQueryParam("api_key", TmdbApiKey)
   let test = 
      let movie = db.Movie.GetMovie("550")
      let creds = movie.Credits()
      creds

不幸的是,当我尝试构建它时,我得到了错误:

C:\Users\Andy\Documents\Programming\Projects\MovieMediaManager\MovieMediaManagerLib\
Library1.fs(73,19):

error FS3033: The type provider 'ApiaryProvider.ProviderImplementation.ApiaryProvider'
reported an error in the context of provided type
'ApiaryProvider.ApiaryProvider,ApiName="themoviedb"+Movie3', member 'Credits'.

The error: Could not load file or assembly 'FSharp.Data.DesignTime, Version=2.0.7.0,
Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find
the file specified.

在线上:

let credits = movie.Credits()

我正在使用 ApiaryProvider 1.0.1。FSharp.Data.DesignTime dll 位于此目录的 nuget 包文件中:

\packages\ApiaryProvider.1.0.1\lib\net40

我在这里读到了这个问题: FSharp.Data.DesignTime .NET 4.5 only?

您可以删除该引用并且它应该可以工作,但这提到了 FSharp.Data 并且它应该在新的 nuget 包中得到修复。

难道我做错了什么?我是否需要签出源代码并手动删除引用并重建?

4

1 回答 1

2

我自己遇到了一些关于 f# 和 FSharp.Data.Dll 的问题。我必须完全unisntall从解决方案中的每个项目中打包,然后重新安装 nuget 包。然后我不得不去Tools, Options, F# Tools, type providers相信FSharp.Data.DLL你目前正在从事的项目。我也遇到了 DLL 同时被多个项目信任的问题,它也会导致问题。

希望这可以帮助!

于 2014-06-30T16:13:55.600 回答