close

https://dotblogs.com.tw/shadow/2012/08/16/74099

這招在Json.net的官方文件有範例(用JObject.FromObject的那個):http://james.newtonking.com/projects/json/help/html/CreatingLINQtoJSON.htm

但只有範例,沒寫為什麼Linq要那樣寫,誰看得懂阿XD

要用Linq直接組JSON

大概把握幾點:

Json Object:Json字串用大括號{}表示,Linq也是用大括號{}表示

Json Object的Name(Key、Property):Json字串在兩個雙引號””裡寫一個英文單字,Linq就直接寫英文單字即可

Json Array:Json字串用中括號[]表示,Linq就用from o in XXX select o,這種回傳IEnumerable的寫法(如果JSON字串是物件陣列的話就用from o in XXX select new {欄位1=YYY}這種形式)

Json Value:Linq就看Json字串填什麼值就跟著填什麼值

 

protected void Page_Load(object sender, EventArgs e)

{ if (!IsPostBack)//Get Method

{

//準備資料

List<string> registration_ids = new List<string>() { "4", "8", "15", "16", "23", "42" };

//用Linq直接組

var result = new { c

ollapse_key = "score_update",

time_to_live = 108,

delay_while_idle = true,

data = new{ score ="4x8",

time = "15:16.2342" },

registration_ids = from s in registration_ids select s

};

//序列化為JSON字串並輸出結果 Response.Write(JsonConvert.SerializeObject(result)); } }

 

 

 

arrow
arrow
    全站熱搜
    創作者介紹

    Chill_Radio 發表在 痞客邦 留言(0) 人氣()