2014-03-07 83 views
1

當使用的Telerik的DataSourceRequest我的控制器內的任何屬性與DateTime數據類型被返回作爲控制器返回不正確的日期時間格式

{"Data":[{"EffectiveStart":"\/Date(1393660800000)\/"} 

代替MM/dd/yy

在我的模型屬性是:

[DataType(DataType.DateTime)] 
    public DateTime EffectiveStart; 

我還在我的文件中包含了Telerik的js文化參考,並且發起了kendo.culture(),但沒有運氣。我錯過了什麼?

如這裏要求是控制器:

public ActionResult Grid_Read([DataSourceRequest]DataSourceRequest request, int id) 
    { 
     try 
     { 
      using (var db = new MyEntities()) 
      { 

       var query = from refA in db.Entity 
          join refB in db.Entity on refA.ID equals refB.ID 
          where refA.ID == id 
          select new ResultList 
          { 
           ResultId = refA.PayeeId, 
           EffectiveStart = refA.EffectiveStart, 
          }; 

       List<ResultList> myvar = query.ToList(); 

       DataSourceResult result = myvar.ToDataSourceResult(request); 

       return Json(result); 
      } 

     } 
     catch (Exception ex) 
     { 
      return Json(null); 
     } 
    } 
+0

,我們可以看到該控制器的代碼?整個方法 –

回答

1

的格式是JSON的似乎是一個問題。看看這個link。希望你從那裏得到一些線索。

也看看這個link

0

有一兩件事你可以做的是更換

return Json(result); 

通過

return Content(JsonConvert.SerializeObject(result)); 

順便說一句,你將需要Newtonsoft.Json使用JsonConvert。

1

感謝您的所有回覆。關於這方面的決議是包括一些客戶端的JavaScript哪些格式字段在運行時:

function toDate(value) 
    var dateRegExp = /^\/Date\((.*?)\)\/$/; 
    var date = dateRegExp.exec(value); 
    return new Date(parseInt(date[1])); 
} 

然後添加一個到Telerik的網格列:

.ClientTemplate("#= kendo.toString(toDate(DateCreated), \"MM/dd/yyyy\") #") 
相關問題