我正在使用FSharp.Data库中的类型提供程序为我从web服务调用中得到的预期的JSON响应生成类型。当我从一个示例JSON文件生成它们时,这非常有效,例如:
type User = JsonProvider<"data/user.sample.json">
我想要做的是生成能够读取和写入我在F#中定义的类型的CSV表示的东西。CsvProvider似乎不符合要求,就像JsonProvider一样,它似乎适用于这样的情况:我从CSV文件开始,想要生成一个类型,而我想要的是相反方向的东西。
使用似乎并不太困难,但是有更好的方法吗?
给定代码:
#if INTERACTIVE
#r "bin\Debug\FSharp.Data.dll"
#endif
open System
open FSharp.Data
open FSharp.Data.Json
let testJson = """{ "workingDir":"hello", "exportDir":"hi there", "items":[{ "source":"", "dest":"
所以我有个剧本:
#r @"..\packages\FSharp.Data.2.4.2\lib\net45\FSharp.Data.dll"
#r "System.Xml.Linq.dll"
open FSharp.Data
// provide some URL, file path, or raw JSON sample
// that can be used at compile time to generate types
type Json = JsonProvider<"example.json">
// at ru
我正在尝试使用FSharp.Data第三方库,但在XmlProvider类上遇到错误The type 'XmlProvider' is not defined。
namespace KMyMoney
open FSharp.Data
module Read =
let xml = File.ReadAllText("KMyMoneySampleFile.xml")
type KMyMoneySource = XmlProvider<xml>
我正在使用NuGet来获取这个库。库是'FSharp.Data 1.1.8‘
我试图理解以下语法:
type CarProvider = JsonProvider<JsonPath>
特指:
JsonProvider<JsonPath> // What is this actually doing?
我想把它读成:
“假设有一个名为CarProvider的类型,它本质上是对这个特定字符串值(即某些文件路径)进行操作的JsonProvider类型”。
然而,我认为使用泛型,类型在其他类型上运行。然而,在这种情况下,我们有一个类型(JsonProvider)操作一个字符串值,而不是一个实际的类型。
有人能根据上面描述的示例语法礼貌地教育我关于F#中泛
我在用file提供的FSharp.Data csv提供程序(包括样例adwords.csv文件)加载csv文件时遇到了问题。
以下这个错误意味着什么?此外,当我在Visual编辑器中的代码上悬停时,它会提到“给定的键不在字典中”。
问题示例:
#load "packages/FsLab/FsLab.fsx"
open System.IO
open FSharp.Data
"adwords.csv"
|> File.ReadAllLines
let test = CsvProvider<"adwords.csv">.GetS
我正在尝试使用来自FSharp.Data的FSharp.Data,下面的示例是:
在这个示例中,他们定义了一个类型,然后使用该类型,但是看起来它们是在交互模式下进行的。我正试图在我的主要做同样的事情,但我不明白为什么它不工作。
在这方面,他们做了以下工作:
type Stocks = CsvProvider<"../data/MSFT.csv">
这是我的尝试:
open System
open System.IO
open FSharp.Data
// Process execution params
// args(0) = nesting