2010-12-08 2 views
1
를 통해 내가 JSON 객체 var에 일치하는 클래스에서입니다

는 JSON

[AcceptVerbs(HttpVerbs.Get)] 
    public JsonResult GetMatchDetails(int id) 
    { 
     var match = GetRepository<Match>().Get(id); 

     return Json(match, JsonRequestBehavior.AllowGet); 
    } 

를 통해이 함수를 호출하고

을 다시 전달 클래스에 액세스 시도는 (버전을 trimed하지만 나머지를 사용할 필요하지 메신저)

public class Match : Entity 
{ 
    public virtual DateTime? MatchDate { get; set; } 
    public virtual ICollection<Boxer> Boxers { get; set; } 
    public virtual string Location { get; set; } 
    public virtual MatchResult Result { get; set; } 
    public virtual int Rounds { get; set; } 
} 

와 자바 스크립트에서 호출이 경고가 내가 그럴 필요했다됩니다

 var matchStuff = null; 
     //Get a class which will have the Match and two boxers part of it 
     $.getJSON("/BoxingPredictionLeague/GetMatchDetails/" + MatchId, function(data){ 
      matchStuff = data; 
      alert(matchStuff.Id); 

     }); 

(호출 한 함수에서)입니다 matchStuff [0] .Id뿐만 아니라 matchStuff.Id를 사용하여 ID를 경고하기 위해 ied하지만 그것은 전혀 경고하지 않습니다 ... 그냥 충돌하거나 그 개체가 null 인 것 같습니다!

+0

디버깅에 도움이되는 제안 : 파이어 폭스에 파이어 폭스를 설치하고, 시작하고, JSON 호출을 실행할 때 콘솔 탭을 살펴보십시오. 확실하지는 않지만 VS의 디버거가 제공하는 것보다 더 자세한 정보가 나와야한다고 생각합니다. – guildsbounty

+0

mmm ive는 Chrome과 Firebug의 자바 스크립트에 중단 점을 넣으려고했는데 어떤 이유로 든 실패하지 않습니다. 그러나 그 코드는 충돌을 겪습니다. JSON 객체가 데이터를 기다리는 동안 계속 진행되는 다른 코드가 있기 때문에 ... 그 작업과 관련이있을 수 있습니까? – Steve

답변

1

명백한 질문 :

당신이 객체를 얻고있는 확신이 저장소에서 반환?

'Id'속성이 있습니까?

그렇지 않으면 (그것은 코드 샘플에 표시되지 않음) : 당신은 크롬을 사용하는 경우

, 당신은 정확히 무엇을하는 것은 JSON을 통해 반환되는 참조하기 위해 다음을 수행 할 수 있습니다.

  1. 고토 도구 -> 개발자 도구 그 버튼 아래에는 '자원'
  2. 조금 줄이 거기에
  3. 클릭, XHR을 클릭합니다.
  4. 왼쪽에는 페이지가 시작한 모든 ajax 호출이 표시됩니다. 헤더는 보내는 메일을 표시합니다. 콘텐츠는 귀하가받은 것을 보여줍니다. 내용은 직선 JSON이지만 거기에서 확인할 수 있어야합니다.

것은 당신이 불을 지르고 사용하는 경우 : 좌측 하단에있는 아이콘을 통해

  1. 열기 불을 지르고있어 그 버튼 아래에있는 '인터넷'탭
  2. 클릭 (의 활성화를 확인) 작은 막대, XHR을 클릭하십시오.
  3. 모든 Ajax 호출 목록이 표시됩니다. 하나를 확장하면 헤더와 콘텐츠 응답을 모두 볼 수 있습니다.

두 가지 방법 중 하나를 사용하면 코드를 추적하는 데 도움이됩니다. 다른 모든 방법은 코드 샘플을 통해 올바르게 표시됩니다.

+0

음, 내 아빠가 내 json 개체로 돌아 오지 않는 것 같습니다 ... 전에 수업을 들으려면 어떻게해야합니까?ICollection 또는 뭔가 있어야합니까? – Steve

+0

Json (...)을 사용하여있는 그대로 개체를 전달할 수 있어야합니다. XHR 콘텐츠가 반환되는 것으로 보이는 것은 무엇입니까? 다른 생각은'virtual' 키워드가 JSON 함수를 던져 버릴지도 모른다는 것입니다. 오브젝트 속성에 필요한 이유가 있습니까? – TheRightChoyce