2015-10-29 22 views
0

您好我正在使用AJAX切換到JSON實現 - 並且需要一些幫助來理解這一點。從C#中返回帶有動態屬性的JSON(UTC毫秒名稱)

數據:數據中有兩部分,第一部分是以毫秒爲單位的UTC時間的日期,第二部分是數值。請建議,如果我應該嵌套它作爲值或數據對象的數組。

能有人告訴如何轉換到JSON世界(這是一個JSON對象吧?), 和

  1. 什麼C#對象將生成此JSON對象(映射和格式在UTC毫秒時間)。
  2. JSONutils是什麼數據成員,dataProperty和無選項
  3. 要獲得JSON databack之間的差異,在行動,我應該返回類型JSON或的ActionResult?
  4. 在HTML/JS的一面,我如何從一個ActonResult或JSON

    { 
        "943721039":4, 
        "946706653":7, 
        "946706350":6, 
        "946728112":1 
    } 
    
+4

如果在鍵/值對這些密鑰是動態然後我想你正在尋找的C#類型本身'dynamic' 。 – David

+0

謝謝@david我從VAR切換到動態 – aggie

回答

1

3-4解析了這一點。只需在MSDN檢查一個簡單的例子: https://msdn.microsoft.com/en-us/library/system.web.mvc.jsonresult(v=vs.118).aspx

這樣的方法返回簡單的json從ex調用。 jquery $ .ajax。

  1. ,你可以去動態大衛建議,並動態地添加屬性(與milisecond名字)吧,像前: Dynamically adding properties to a dynamic object?

不過,我會避免它儘可能。爲什麼不僅創建一個像{time:'878499204',value:'2'}這樣的對象列表,創建和使用起來會更容易。否則,對於你的json,你基本上需要在客戶端使用'for in',這並不是最酷的方式。我不喜歡它:

return Json(new []{ new {time = '878499204', value ='2'}, ... }); 

這將產生:

[ { time: '878499204', value ='2'}, .... ] 

你也可以做的序列化定製和序列化的字典到你需要的格式,或者創建自己一個JSON,只是將其構建爲一個字符串。

  • 閱讀手冊..