Я новичок в MVC, AJax и JSON. Я создаю список букв в соответствии с передачей параметров в контроллер, как это

public JsonResult RefreshTable(int fld_id) { List{amp}lt;Referring{amp}gt; letterList = new List{amp}lt;Referring{amp}gt;(); using (WebECartableEntities dc = new WebECartableEntities()) { letterList = dc.Referrings.Where(u ={amp}gt;u.fld_Id == fld_id).ToList(); } return Json(letterList, JsonRequestBehavior.AllowGet); } 

LetterList заполнен списком писем. и я получаю результат в jquery Ajax, как это:

  var CategoryClick= function(clicked_id) { $.ajax({ type: "Post", url: '/Main/RefreshTable', data: { fld_id: clicked_id }, success: function (reutrnList) { alert("success"); } , error: function () { alert("Error"); } }); } 

в этом случае я получаю сообщение «Ошибка», хотя метод контроллера работает правильно. Но если я изменю метод контроллера на это:

  public JsonResult RefreshTable(int fld_id) { List{amp}lt;Referring{amp}gt; letterList = new List{amp}lt;Referring{amp}gt;(); using (WebECartableEntities dc = new WebECartableEntities()) { var items= dc.Referrings.Where(u ={amp}gt;u.fld_Id == fld_id).ToList(); foreach (var item in items) { Referring reff = new Referring(); reff.ID = item.ID; reff.SenderPosition = item.SenderPosition; reff.Subject = item.Subject; letterList.Add(reff); } } var reutrnList = letterList; return Json(reutrnList, JsonRequestBehavior.AllowGet); } 

Теперь все хорошо, и я получаю сообщение об успехе. Может кто-нибудь сказать мне, почему это в первом методе. Я хочу иметь список одновременно и вернуть его в метод jjery Ajax. не создавая один за другим список.

Спасибо