2010-04-20 3 views
1

저는 자바 스크립트로 보내려고하는 C# 개체 (아래)를 가지고 있습니다.C# -> javascript, Json 해답 속성이 누락되었습니다

내 문제는 목록의 항목을 반복 할 수 있지만 문자열 속성 ('기간')을 가져올 수 없다는 것입니다.

JS에서 개체를 참조하면 전혀 속성이 표시되지 않습니다. C#에서 JSON 인코딩 후, 나는 아직도 (아래 함수에서 결과 변수 위에 마우스) 단지 호출자에게 반환하기 전에 속성을 볼 수 있습니다 :이지나 지구에

[OutputCache(Duration = 0, VaryByParam = "None")] 
    public JsonResult GetRankingList() 
    { 
     Response.ContentType = "text/javascript"; 
     var user = _userService.GetUserByPrincipal(User); 

     // Note, we do this while the user waits as we need to make progress in repeated calls to get the compared ranking list. 
     _businessLogicServiceMaintenance.PerformMaintenanceSteps(); 

     //TODO: Replace with userid (Guid) 
     var rankingList = _presenterService.GetRankingListForDisplay(user); 

     if (rankingList == null) 
      return Json(""); 

     var result = Json(rankingList); 
     return result; 
    } 

어떻게 얻을 수

? 모든 의견을 높이 평가!

너의 것, 앤더스, 덴마크, 당신의 시간을내어

public class RankingListForDisplay : List<RankingListLine> 
{ 
    public string Period { get; set; } 
} 
+0

목록에서 JSON을 만드는 방법과 호출자에게 반환하기 전에 얻는 결과는 무엇입니까? – drs9222

+0

안녕하세요, 죄송합니다 -이 (가) 댓글을 보지 못했습니다. 나는 C# 코드가 호출되는 것을 보여주는 질문을 편집했습니다. –

+0

사용중인 JSON 시리얼 라이저 란 무엇입니까? –

답변

0

덕분에 - 나는 해결책을 찾아 냈다.

위에서 RankingListForDisplay의 구현을 위의 것으로 변경했습니다. 어떤 이유로 json이 더 좋아합니다 ;-)

public class RankingListForDisplay 
{ 
    public List<RankingListLine> Lines { get; set; } 
    public string Period { get; set; } 

    public RankingListForDisplay() 
    { 
     Lines = new List<RankingListLine>(); 
     Period = "<Unspecified>"; 
    } 
}