[英]Serialize JSON to JSON Array (Nested JSON) for POST Request C#
{
"Data": [
{
"employee_num": "7812345",
"code": "333",
"startdate": "2020-10-03"
},
{
"employee_num": "2345789",
"code": "444",
"startdate": "2020-10-03"
}
]
}
我被這個困住了
{
"employee_num": "7812345",
"code": "333",
"startdate": "2020-10-03"
},
{
"employee_num": "2345789",
"code": "444",
"startdate": "2020-10-03"
}
這是我的代碼
var options = new JsonSerializerOptions
{
WriteIndented = false
};
var jsonString = JsonSerializer.Serialize(Model, options);
新手來了
我使用了 newtonsoft 的 Json Conerter 並得到了你想要的格式。
Test t = new Test("Max", "Musterallee", "Mustermann@Muster.de");
Test t1 = new Test("Max2", "Musterallee2", "Mustermann2@Muster.de");
Test2 t2 = new Test2();
t2.addUser(t);
t2.addUser(t1);
var output = JsonConvert.SerializeObject(t2);
Console.WriteLine(output);
測試:
class Test
{
public string name { get; set; }
public string adress { get; set; }
public string email { get; set; }
public Test(string name, string adress, string email)
{
this.name = name;
this.adress = adress;
this.email = email;
}
}
測試2:
class Test2
{
public List<Test> Data;
public Test2()
{
Data = new List<Test>();
}
public void addUser (Test t1)
{
Data.Add(t1);
}
}
輸出如下所示:
{
"Data": [
{
"name": "Max",
"adress": "Musterallee",
"email": "Mustermann@Muster.de"
},
{
"name": "Max2",
"adress": "Musterallee2",
"email": "Mustermann2@Muster.de"
}
]
}
好吧,從技術上講,你的json
建議你應該有一個這樣的模型:
public partial class SomeClass // You can choose some better class names.
{
[JsonProperty("Data")]
public List<Datum> Data { get; set; }
public SomeClass()
{
Data = new List<Datum>();
}
}
public partial class Datum
{
[JsonProperty("employee_num")]
public string EmployeeNum { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("startdate")]
public string Startdate { get; set; }
}
這就是它的填充方式:
var someClassObj = new SomeClass();
var datum = new Datum
{
EmployeeNum = "123",
Code = "321",
StartDate = "2003-03-03"
};
someClassObj.Data.Add(datum);
// You can add more objects in it as per your need.
然后要將其序列化為json
您應該執行以下操作:
var json = JsonConvert.Serialize(someClassObj);
輸出將是這樣的:
{
"Data": [
{
"employee_num": "123",
"code": "321",
"startdate": "2003-03-03"
}
]
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.