- fsharp/
- 无法从FSharp.Data实例化任何F#类型提供程序
无法从FSharp.Data实例化任何F#类型提供程序
无法从FSharp.Data实例化任何F#类型提供程序,f#,type-providers,F#,Type Providers,我正在尝试为CSV类型提供程序重新创建最简单的示例:
默认情况下,我在Visual Studio 2015中创建了一个库项目
目标F#4.0和.NET 4.5.2
我通过NuGet添加了FSharp.Data 2.2.5
我的项目中已经有一个错误和一个警告:
类型提供程序“ProviderImplementation.JsonProvider”报告
错误:类型提供程序构造函数引发异常:API
限制:大会的决定file:///c:\用户\james
foye\documents\visual
我正在尝试为CSV类型提供程序重新创建最简单的示例:
- 默认情况下,我在Visual Studio 2015中创建了一个库项目
目标F#4.0和.NET 4.5.2
- 我通过NuGet添加了FSharp.Data 2.2.5
我的项目中已经有一个错误和一个警告:
类型提供程序“ProviderImplementation.JsonProvider”报告
错误:类型提供程序构造函数引发异常:API
限制:大会的决定file:///c:\用户\james
foye\documents\visual studio
2015\Projects\CsvExample\packages\FSharp.Data.2.2.5\lib\net40\FSharp.Data.dll'
已从其他位置加载。无法从中加载它
同一appdomain中的新位置。CsvExample c:\users\james
foye\documents\visual studio
2015\Projects\CsvExample\CsvExample\Library1.fs 1
及
引用的程序集“c:\users\james foye\documents\visual studio”
2015\Projects\CsvExample\packages\FSharp.Data.2.2.5\lib\net40\FSharp.Data.dll'
具有程序集级别属性
'Microsoft.FSharp.Core.CompilerServices.TypeProviderAssemblyAttribute'
但是没有创建公共类型提供程序类
找到CsvExample c:\users\james foye\documents\visual studio
2015\Projects\CsvExample\CsvExample\Library1.fs 1
实例化提供程序的所有尝试均失败,例如:
打开FSharp.Data
让yahoo=CsvProvider
C:\Data\Ebooks\F#\Deep dive\Source\Chap6\YahooProvider\stdin(4,13):
错误FS0039:未定义值或构造函数“CsvProvider”
不管我如何处理路径(提供完整路径、更改FSI的工作目录等)我无法找到编译器错误的根源,它几乎像是Visual Studio、NuGet或工具链的其他部分的某个地方的bug。但正如mpeac所建议的,只要重新启动VS就可以清除它
一旦我这样做了,我需要将代码从声明let绑定更改为定义类型。我刚刚错误地键入了“let=”而不是“type=”。我猜(因为前几天我遇到了这个问题)编译的项目有不同版本的F#。数据对于第一个错误,请尝试重新启动visual Studio。事实上,重新启动VS会消除这些错误。现在我看到“let=”是错误的,应该是“type=”。现在它起作用了。我建议你写下让它起作用的步骤,把它作为你自己问题的答案贴出来,然后接受你的答案。(我认为在你被允许接受自己的答案之前有两天的等待期)。这将使人们更容易在以后遇到这个问题时发现什么对你有用。