2014-12-16 2 views
0

Google에서는 주간 데이터를 표시하기 위해 개발중인 검도 차트에서 문제가 발생합니다.검도 MVC 차트에서 JSON과 다른 날짜가 표시됩니다

[ 
    {"WeekofYear":45,"Value":96.08,"WeekBeginDate":"\/Date(1415422800000)\/"}, 
    {"WeekofYear":46,"Value":97.40,"WeekBeginDate":"\/Date(1416027600000)\/"}, 
    {"WeekofYear":47,"Value":96.50,"WeekBeginDate":"\/Date(1416632400000)\/"}, 
    {"WeekofYear":48,"Value":93.93,"WeekBeginDate":"\/Date(1417237200000)\/"}, 
    {"WeekofYear":49,"Value":96.76,"WeekBeginDate":"\/Date(1417842000000)\/"}, 
    {"WeekofYear":50,"Value":94.50,"WeekBeginDate":"\/Date(1418446800000)\/"} 
] 

json으로의 날짜가 문제의 주 매주 토요일의 날짜를 나타냅니다처럼 우리가보기에 전송하고있는 JSON 보인다. 그러나 그래프를 렌더링 할 때 스크린 샷에 표시된대로 요일의 날짜가 대신 표시됩니다. filterStatusData 기능은 우리가 호출을 위해 JSON을 생성하기 위해 컨트롤러에서 사용하는 플래그를 설정

@(Html.Kendo().Chart<Dashboard.Models.CentralScheduling>() 
.Name("CallsAnswered") 
.Title("% of Calls Answered") 
.Legend(legend => legend.Visible(false)) 
.DataSource(dataSource => dataSource 
    .Read(read => read.Action("CentralScheduling", "Dashboard").Data("filterStatusData"))) 
    .Series(series => 
    { 
     series.Line(d => d.Value) 
    .Tooltip(t => t.Visible(true).Template("#=value#%")); 
    }) 
    .CategoryAxis(axis => axis 
     .Categories(model => model.WeekBeginDate) //WeekBeginDate holds the date at the end of the week for this particular chart  
     .Labels(labels => labels.Format("MM/dd/yyyy") 
     .Rotation(-60) 
     ) 
    ) 
    .ValueAxis(axis => axis 
    .Numeric().Labels(labels => labels.Format("{0}%")) 
    .Max(100) 
    ) 
    .SeriesColors("#3aafff","#ffb800","#a7008f","#99c900","#FF0000", "#002060") 
) 

:

Chart Screenshot

우리는 차트를 생성하는 면도기 엔진에 다음 코드를 사용하는 차트.

저는 왜 우리가 공급하는 차트가 아닌 다른 날짜가 차트에 선택되었는지 설명하기가 어렵습니다.

+0

내가 그 날짜 (금) 23시지고있어 아마 때문에 현지 시간 영역의 - 검도에 사용할 시간대가 있습니까? –

+0

예, 여기 EST에 있습니다. 그래서 우리는 시간이 00:00:00으로 나옵니다. 이것이 우리의 원래 날짜 차원 테이블의 데이터입니다. 뽑아 에서뿐만 아니라 기반으로합니다. –

+0

답변을 주셨습니다. 그게 당신을위한 옵션입니까? JSON은 실제로 문자열을 보내는 것입니다. Kendo는 실제로이 문자열을 가져 와서 javascript Date 객체로 변환합니다. 그래서 나는 제안한 것에 아무런 문제가 없음을 안다. –

답변

0

Telerik에서 제공하는 옵션 - .Net DateTime 객체 대신 서버에서 문자열로 날짜를 전달하는 것입니다. 클라이언트는 날짜 객체와 마찬가지로 구문 분석합니다.

그래서 당신의 JSON이 될 것 무언가 같이 "MM YYYY-MM-DD HH"이 형식을 사용

[ 
    {"WeekofYear":45,"Value":96.08,"WeekBeginDate":"2014-12-16 07:00"}, 
    ... 
+0

그게 효과가! 보기에서 .Format ("MM/dd/yyyy")가 문자열 필드와 함께 작동하지 않는 것처럼 보이기 때문에 레이블을 약간 다르게 지정해야하지만 지금 정확한 날짜를 제공하고 있습니다. –

관련 문제