【发布时间】:2020-09-23 15:46:18
【问题描述】:
我正在尝试为 REST api 调用构造一个请求正文,我需要创建一个 JSON 对象,其中包含我想要返回的属性列表。 例如:我有这个 C# 对象,我想取回:
public class SomeProperties
{
public string TicketNumber { get; set; }
public Driver Driver { get; set; }
}
public class Driver
{
public string Name { get; set; }
}
要找回它,我需要将这些属性放在 JSON 请求正文中,如下所示:
"properties": [
"ticketNumber",
"driver.name"
]
我的尝试如下所示:
private string FetchProperties()
{
var fetchProperties = new
{
properties = new List<string>
{
"ticketNumber",
"driver.name"
}
};
var jsonResult = JsonConvert.SerializeObject(fetchProperties, Formatting.None);
return jsonResult;
}
但我不想像这样对属性进行硬编码。
那么有什么方法可以使用我想要的对象中的属性名称,放入我在上面的方法中创建的字符串列表中?
谢谢!
【问题讨论】:
-
我不太明白你的问题。您正在尝试通过将类型映射到骆驼大小写的jsonpath 属性名称列表来序列化对象图的预期属性列表。但是您想在接收端反序列化实际实例属性值?如何将类型信息映射到实例数据?
-
嗨@dbc,我刚刚更新了这个问题。谢谢。
-
听起来您可能想要使用图形查询。虽然可以使用 REST,但它是相当多的工作。这里有一些答案可能会有所帮助:stackoverflow.com/questions/40871190/…
标签: c# .net json serialization json.net