(ฉันได้ย้ำคำถามของฉันที่นี่: การสร้างอินสแตนซ์คลาสตามรายการรายการแบบไดนามิก)
ขณะนี้ฉันกำลังทำงานกับโปรแกรมใน Visual Studio 2015 ด้วย C#
ฉันมีสตริงรายการ 5 รายการที่มีข้อมูลที่ฉันต้องการทำให้เป็นอนุกรมเป็นไฟล์ json
public List<string> name { get; private set; }
public List<string> userImageURL { get; private set; }
public List<string> nickname { get; private set; }
public List<string> info { get; private set; }
public List<string> available { get; private set; }
ตัวอย่างของรูปแบบไฟล์ json ที่ต้องการคือรูปแบบต่อไปนี้:
{
"users" :
[
{
"name" : "name1",
"userImageURL" : "userImageURL1",
"nickname" : "nickname1",
"info" : "info1",
"available" : false,
},
{
"name" : "name2",
"userImageURL" : "userImageURL2",
"nickname" : "nickname2",
"info" : "info2",
"available" : false,
},
{
"name" : "name3",
"userImageURL" : "userImageURL3",
"nickname" : "nickname3",
"info" : "info3",
"available" : false,
},
{
"name" : "name4",
"userImageURL" : "userImageURL4",
"nickname" : "nickname4",
"info" : "info4",
"available" : false,
}
]
}
โปรดทราบว่าอาจมีข้อผิดพลาดในตัวอย่าง json ด้านบน
ฉันได้ลองรวม 5 รายการเพื่อสร้าง 1 รายการเพื่อทำให้เป็นอนุกรมโดยใช้รหัสต่อไปนี้:
users = new List<string>(name.Count + userImageURL.Count + nickname.Count + info.Count + available.Count);
allPlayers.AddRange(name);
allPlayers.AddRange(userImageURL);
allPlayers.AddRange(nickname);
allPlayers.AddRange(info);
allPlayers.AddRange(available);
จากนั้นฉันก็ทำให้รายการเป็นอนุกรมด้วยโค้ดที่ตกลงมา:
string data = JsonConvert.SerializeObject(users);
File.WriteAllText("data.json", data);
นี่เป็นเพียงการสร้างอาร์เรย์ของวัตถุที่ไม่มีการจัดระเบียบ ฉันอยากรู้ว่าฉันจะจัดระเบียบพวกมันตามที่แสดงในรูปแบบด้านบนได้อย่างไร
PS: ฉันค่อนข้างใหม่กับการเขียนโค้ดอย่างที่คุณบอกได้ ขออภัยถ้าฉันแสดงคำถามไม่ถูกต้องหรือใช้คำศัพท์ที่ถูกต้อง นอกจากนี้นี่ไม่ใช่รหัสต้นฉบับ รหัสจะสร้างรายการนี้ซึ่งฉันต้องการทำให้เป็นอนุกรมเป็นไฟล์ json
PSS: ข้อมูลนี้รวบรวมโดยใช้ HtmlAgilityPack เมื่อวานฉันถามคำถามถามว่าฉันจะแยกวิเคราะห์ไฟล์ html และทำให้ข้อมูลเป็นอนุกรมเป็นไฟล์ json ได้อย่างไร การใช้ HtmlAgilityPack เพื่อรับ ข้อมูลเฉพาะใน C# และทำให้เป็นอนุกรมเป็น json เมื่อไม่มีใครตอบ ฉันจึงตัดสินใจลองทำด้วยตัวเอง วิธีที่ผมใช้อาจจะไม่ดีที่สุดแต่คือสิ่งที่ผมสามารถทำได้ด้วยความรู้ที่มี