2009-09-02 6 views
3

ASP.NET JSON은 DateTime을 "/ Date (1251877601000) /"형식으로 serialize합니다. Pls,이 문자열을 java (GWT) Date 객체로 파싱하는 데 도움이됩니다.GWT로 ASP.NET JSON 날짜 형식을 구문 분석하는 방법

이 시점에서 내가 사용한 해결책은 정규식으로 파싱하고 길게 추출하지만 JSNI를 오랫동안 푸시 할 수는 없습니다.

답변

0
function FixJsonDates(data) { 

     //microsoft script service perform the following to fix the dates. 
     //json date:\/Date(1317307437667-0400)\/" 
     //javasccript format required: new Date(1317307437667-0400) 

     //copied from micrsoft generated fiel. 
     var _dateRegEx = new RegExp('(^|[^\\\\])\\"\\\\/Date\\((-?[0-9]+)(?:[a-zA-Z]|(?:\\+|-)[0-9]{4})?\\)\\\\/\\"', 'g'); 
     var exp = data.replace(_dateRegEx, "$1new Date($2)"); 


     return eval(exp); 
    } 
+0

이 코드는 GWT 코드처럼 보이지 않습니다. –

0

사용 nuget이 JSON.NET은 다음 JsonResult 방법 안에 이것을 사용 얻을 수있다이 질문에 대한 답 :

보기 간단 이렇게
return Json(JsonConvert.SerializeObject(/* JSON OBJECT TO SEND TO VIEW */)); 

내부 javascript에서 :

JSON.parse(@Html.Raw(Model.data)) 

아약스 전화 인 경우 또는보기 모델을 통해 제공된 경우 :

var request = $.ajax({ url: "@Url.Action("SomeAjaxAction", "SomeController")", dataType: "json"}); 
request.done(function (data, result) { JSON.parse(data); }); 
관련 문제