因此,假设我有一个CSV文件,其中包含包含Population和Profit列的标题,我想在F#interactive中使用它。我有以下代码:
#r "../packages/FSharp.Data.1.1.10/lib/net40/FSharp.Data.dll"
open FSharp.Data
// load csv header
let cities = new CsvProvider<"cities.csv">()
// how to reach data
let firstRow = cities.Data |> Seq.head
let firstPopulation = firstRow.Population
let firstProfit = firstRow.Profit
我从F#interactive中收到错误:
错误FS0039:未定义字段,构造函数或成员“Population”
这对我来说似乎很困惑,因为VS中的intellisense通过CSV类型提供程序从我的数据中获取此列没有任何问题。
另外,我尝试使用相同类型的提供程序创建一个程序,一切正常。像这样:
open FSharp.Data
[<EntryPoint>]
let main argv =
use file = System.IO.File.CreateText("result.txt")
let csv = new CsvProvider<"cities.csv">()
for record in csv.Data do
fprintfn file "%A" record.Population
0
我错过了什么吗?谢谢你的回答。
答案 0 :(得分:0)
试试此代码
let Cities = new CsvProvider<"cities.csv">()
let cities = new Cities()
let firstRow = cities.Rows |> Seq.head