c# - C# 将对象的List 转换为 json array

  显示原文与译文双语对照的内容
145 2

我有一个类对象的List,它们有电子邮件地址和状态数据成员。 我试图将这些转换为一个 json,确保 array 上有"操作"单词。

这是我的课:


class MyClass


{


 public string email {get; set; }


 public string status { get; set; }


}



这是我当前的代码( 未建立):


List<MyClass> data = new List<MyClass>();


data = MagicallyGetData();



string json = new {


 operations = new {


 JsonConvert.SerializeObject(data.Select(s => new {


 email_address = s.email,


 status = s.status


 }))


 }


};



这是我要获取的JSON:


{


"operations": [


 {


"email_address":"email1@email.com",


"status":"good2go"


 },


 {


"email_address":"email2@email.com",


"status":"good2go"


 },...


 ]


}



我应该注意的是,我获得的数据来自于数据库。 我正在从数据库中序列化JSON并使用几种不同的方法使用数据,因此我无法更改类的成员名。

时间: 原作者:

92 4

我相信这会给你想要的。 如果可能的话,你必须更改类属性名。-


 class MyClass


 {


 public string email_address { get; set; }


 public string status { get; set; }


 }



 List<MyClass> data = new List<MyClass>() { new MyClass() { email_address ="email1@email.com", status ="good2go" }, new MyClass() { email_address ="email2@email.com", status ="good2go" } };


 var json = JsonConvert.SerializeObject(new


 {


 operations = data


 });



56 5

你可以尝试以下操作:


using System.Web.Script.Serialization;


var jsonSerialiser = new JavaScriptSerializer();


var json = jsonSerialiser.Serialize(data);



138 2

class MyClass


{


 public string email_address { get; set; }


 public string status { get; set; }


}



List<MyClass> data = new List<MyClass>() { new MyClass() { email_address ="email1@email.com", status ="good2go" }, new MyClass() { email_address ="email2@email.com", status ="good2go" } };



//Serialize


var json = JsonConvert.SerializeObject(data);



//Deserialize


var jsonToList = JsonConvert.DeserializeObject<List<MyClass>>(json);



133 3

你可以简单的。


var lstroom = _roomrep.GetAllRoomList().ToList();


return Json(new


 {


 data = lstroom


 }, JsonRequestBehavior.AllowGet);



...