gpt4 book ai didi

json - F#:如何将 Json.NET [JsonConstructor] 属性应用于主构造函数?

转载 作者:行者123 更新时间:2023-12-04 18:36:39 26 4
gpt4 key购买 nike

我正在尝试在 F# 中做一些事情,比如 JsonConstructorAttribute Json.NET documentation 中的示例:

public class User
{
public string UserName { get; private set; }
public bool Enabled { get; private set; }

public User()
{
}

[JsonConstructor]
public User(string userName, bool enabled)
{
UserName = userName;
Enabled = enabled;
}
}

F# 中的模拟似乎类似于以下内容,但我在放置 [<JsonConstructor>] 时遇到错误:

[<JsonConstructor>] // ERROR! (see below)
type User (userName : string, enabled : bool) =
member this.UserName = userName
member this.Enabled = enabled

错误是

This attribute is not valid for use on this language element



那么,我如何用 [<JsonConstructor>] 装饰主构造函数? ?

最佳答案

事实证明这很容易。通过放置 [<JsonConstructor>] 来定位主构造函数就在主构造函数的参数列表之前:

type User [<JsonConstructor>] (userName : string, enabled : bool) =
member this.UserName = userName
member this.Enabled = enabled

关于json - F#:如何将 Json.NET [JsonConstructor] 属性应用于主构造函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33921059/

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