ユーザーのリストを返すクラスがあります
public IList<RegisterUsers> GetUsers()
{
var query = (from up in _context.UserProfile
join um in _context.Membership on up.UserID equals um.UserID
select new RegisterUsers { ID = ua.UserID, FirstName = ua.FirstName, LastName = ua.LastName, LastLogIn = up.LastLogIn, Status = up.Status });
return query.ToList();
}
アクションで次のことを実行して、このクラスを呼び出します
var UserRepository = new UserRepository();
var AllUsers = UserRepository.GetUsers();
var result = from c in AllUsers
select new List<string> { c.ID.ToString(), c.FirstName, c.LastName, c.LastLogIn,c.Status };
return Json(new { sEcho = param.sEcho,
iTotalRecords = result.Count(),
iTotalDisplayRecords = result.Count(),
aaData = result
},
JsonRequestBehavior.AllowGet);
上記のコードは正常に動作し、JSON データを返します。しかし、AllUsers を aaData 変数に直接アタッチするとエラーが発生する理由を理解しようとしています。下記を参照してください。
var UserRepository = new UserRepository();
var AllUsers = UserRepository.GetUsers();
return Json(new { sEcho = param.sEcho,
iTotalRecords = AllUsers.Count(),
iTotalDisplayRecords = AllUsers.Count(),
aaData = AllUsers
},
JsonRequestBehavior.AllowGet);