接口属性未序列化

jbe*_*eko 5 f# json.net

如果我定义了一个实现带有附加属性的接口的记录,则接口属性不会被 json.net 序列化。如何让 json.net 序列化这些接口属性。这是一个例子

open Newtonsoft.Json

type IRecord =
    abstract member id : string

type ARec = {
    Name : string
} with
    interface IRecord with
        member this.id = this.Name

let aRec = {Name = "John"}
Run Code Online (Sandbox Code Playgroud)

JsonConvert.SerializeObject aRecJsonConvert.SerializeObject (aRec :> IRecord)结果,{"Name":"John"}但我期望{"Name":"John"; "id":"John"}

我尝试添加ShouldSerializeid到界面,但没有任何区别。