Возврат нескольких объектов с использованием класса JsonResult в ASP.NET MVC
Возможно ли создание нескольких объектов с использованием класса JsonResult в ASP.NET MVC.... Вот метод контроллера, который возвращает объект json моих записей, но я также хочу передать значение счетчика....
var materials = consRepository.FindAllMaterials().AsQueryable();
var count = materials.Count();
var results = new PagedList<MaterialsObj>(materials, currentPage-1, pageSize);
return Json(results);
Как вернуть счет вместе с results
с контроллера asp.net mvc....
3 ответа
Решение
Как насчет создания анонимного типа и JSON'а?
например
var resultCount = results.Count;
var genericResult = new { Count = resultCount, Results = results };
return Json(genericResult);
Затем вы можете оценить вашу строку json в вашем скрипте, как и раньше, но просто запросить свойства Count и Results для вашего результата eval.
Существует способ отправки нескольких объектов, которые динамически идентифицируются для отправки. Смотрите это.
В части C#:
Используя новую клавиатуру
var genericResult = new { homeworkData = homework, attachmentData = homeworkAttachment };
var result = this.Json(genericResult, JsonRequestBehavior.AllowGet);
return result;
В jquery сторона:
function getHomewrokDetailResponse(dataSent, result) {
if (result && result.homeworkData) {
homeworkId = result.homeworkData.homeworkId;
....
}
if (result && result.attachmentData) {
xy = result.attachmentData.xyz;
....
}