gpt4 book ai didi

f# - Json类型提供程序: using type as an argument in a function

转载 作者:行者123 更新时间:2023-12-04 13:59:39 25 4
gpt4 key购买 nike

我有一个像这样的json文件:

{ "index": 1, "addressOne": "1506 WAKE FOREST RD ", "addressTwo": "RALEIGH NC 27604-1331", "addressThree": " ", "assessedValue": "$34,848", "id": "c0e931de-68b8-452e-8365-66d3a4a93483", "_rid": "pmVVALZMZAEBAAAAAAAAAA==", "_ts": 1423934277, "_self": "dbs/pmVVAA==/colls/pmVVALZMZAE=/docs/pmVVALZMZAEBAAAAAAAAAA==/", "_etag": "\"0000c100-0000-0000-0000-54df83450000\"", "_attachments": "attachments/" }



然后,我通过类型提供程序加载它,如下所示:
type HouseValuation = JsonProvider<"../data/HouseValuationSample.json">

当我尝试将HouseValuation用作参数的一部分时,它将被强制转换回Object:

我究竟做错了什么?

提前致谢

最佳答案

HouseValuation类型是一种根类型,仅用于承载ParseLoad方法,但不是表示实际已解析文档的类型。如果查看LoadParse的类型,您将看到类似以下内容:

Load : string -> JsonProvider<"...">.Root

因此,实际解析的文档的类型是在主要提供的 Root类型下的嵌套类型 HouseValuation。然后,该函数应将 HouseValuation.Root用作参数:
type HouseValuation = JsonProvider<" ... ">

let createSchoolAssignmentSearchCriteria(houseValuation:HouseValuation.Root) =
houseValuation.AddressOne

当您键入 HouseValuation.时,您将看到两个静态方法以及那里的所有嵌套类型(尽管在此示例中,只有一种记录类型)。

关于f# - Json类型提供程序: using type as an argument in a function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28518445/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com