2011-02-23 63 views
0

我想爲ExtJs日曆設置一個Json商店。
商店使用Http Proxy來檢索它的數據。
商店字段包括startDate和endDate類型爲date的對象。
我將我的C#代碼中的數據序列化到Json中,這將由Http代理請求。
我想知道我應該序列化開始和結束爲一個字符串或C#日期時間類型。
現在我將它們序列化爲DateTime類型。.NET DateTime序列化爲JSON以用於ExtJs JsonStore(ExtJs日曆的事件存儲)?

JSON響應看起來是這樣的:

{"Data": 
"items":[{ 
    "cid":"0", 
    "end":"\/Date(1275260400000+0100)\/", 
    "notes":"4:00", 
    "start":"\/Date(1275260400000+0100)\/", 
    "title":"Basic""}] 

的開始和結束的屬性看起來像某種最新的參考。 我試圖序列化startDate和endDate作爲字符串而不是DateTime類型。 這將返回以下JsonResponse:

{"Data": 
"items":[{ 
    "cid":"0", 
    "end":"03/06/10", 
    "notes":"4:00", 
    "start":"04/06/10", 
    "title":"Basic""}] 

然而,當商店已完成加載結束日期且StartDate領域這兩種情況下是不確定的。 我應該在這裏做什麼?
我在想也許我必須將日期格式化爲extjs預期的某種格式?

下面是一些示例代碼:

this.eventStore = new Ext.data.JsonStore({ 
    id: 'eventStore', 
    root: 'Data.items', 
    proxy: new Ext.data.HttpProxy({ 
      url: AppRootPath + 'Calendar/GetCalendarData', 
      method: 'POST' 
    }),//proxy 
    fields: Ext.calendar.EventRecord.prototype.fields.getRange() 
}); 

回答

0

我有同樣的問題,我解決了它這樣的:

fields: [ 
       { name: 'Id', type: 'int' }, 
       { name: 'ResourceId', mapping: 'fitter_id', type: 'int' }, 
       { name: 'StartDate', type: 'date', format: 'd/m/Y G:i' }, 
       { name: 'EndDate', type: 'date', format: 'd/m/Y G:i' }, 
       { name: 'status', type: 'int' }, 
       { name: 'job_id', type: 'int' } 
     ]