![](/img/trans.png)
[英]JSON Newtonsoft C# Good Practice for Serialize/ Deserialize Lists of Objects
[英]json serialize Lists with newtonsoft
我想使用newtonsoft json serialzer創建json。 我是新建LIST和收藏集的新手,所以我會向您尋求幫助。 創建一個簡單的json就可以了。 我必須建立一個帶有屬性列表的屬性列表。
Maybee還有另一個庫,使之更容易嗎?
我需要這個json:
{
"objectTypeId": 545,
"attributes": [{
"objectTypeAttributeId": 222,
"objectAttributeValues": [{
"value": "Kommentar"
}]
}]
}
所以為此我開始
public class Controller
{
public int objectTypeId { get; set; }
public IList<string> attributes { get; set; }
}
Controller controllerjson = new Controller
{
objectTypeId = 545,
// How to add the attributes with each values ?
}
您的c#類模型無法與JSON數據匹配。
有兩種方法可以輕松創建模型。
您可以在Visual Studio中使用Web Essentials,使用“編輯”>“選擇性粘貼”>“將JSON粘貼為類”,可以更輕松地了解Json與模型之間的關系。
如果您不能使用Web Essentials,則可以代替使用http://json2csharp.com/在線JSON到Model類。
您可以嘗試使用這些模型來攜帶JSON格式。
public class ObjectAttributeValue
{
public string value { get; set; }
}
public class Attribute
{
public int objectTypeAttributeId { get; set; }
public List<ObjectAttributeValue> objectAttributeValues { get; set; }
}
public class RootObject
{
public int objectTypeId { get; set; }
public List<Attribute> attributes { get; set; }
}
您可以這樣使用。
RootObject controllerjson = new RootObject()
{
objectTypeId = 545,
attributes = new List<Attribute>() {
new Attribute() {
objectTypeAttributeId = 222,
objectAttributeValues = new List<ObjectAttributeValue>() {
new ObjectAttributeValue() { value= "Kommentar" }
}
}
}
};
string jsonStr = JsonConvert.SerializeObject(controllerjson);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.