我有一个 JObject,我想从它的强类型对象设置一个属性。
JObject["ProductionVersion"] = new ProductionVersion();
为此,需要将 ProductVersion 转换为 JToken。 如何执行此操作,而不必将对象序列化和反序列化为 JObject?
JObject["ProductVersion"] = JsonConvert.DeserializeObject<JObject>(JsonConvert.SerializeObject(message.ProductVersion))
你的问题有点令人困惑。
- 所以你有
JObject
,你想要一个JToken
?好吧,JObject
是JToken
.在此处查看继承层次结构:JObject class
- 如果您的意思是"我有一个可序列化的对象,并且我想将其转换为 JToken 而无需再次序列化和反序列化它",请使用此
JToken.FromObject(obj)
您可以通过在JObject
上调用 Properties
来访问属性。
当您需要添加属性时,只需使用 JProperty
构造函数添加它。
请参阅 JSON.NET 文档。