я мог бы быть старой школой, но я стараюсь использовать view models
как можно больше. То, что я обычно делаю это, чтобы заполнить модель представления в методе действия моего контроллера, а затем передать на этой точки зрения модели с точки зрения:
public async Task<ActionResult> Details(int brandId)
{
BrandViewModel model = await brandTask.DetailsAsync(brandId);
if (model == null)
{
throw new HttpException(404, "404");
}
return View(model);
}
Есть времена, что мне нужно будет первой загрузке страницы, а затем заполнить определенные элементы управления с данными, возвращающими данные в формате JSON
. Некоторое время назад я работал над проектом, где мне нужно, чтобы заполнить datatable с данными JSON после того, как была загружена форма:
public ActionResult GetApplicationNotes(DataTableParameterViewModel parameterViewModel, int id)
{
IEnumerable<Note> notes = noteService.FindAllByApplicationId(id);
var result =
from note
in notes
orderby note.Id descending
select new[]
{
note.Body,
note.CreatedDate.FormatDate()
};
return Json(new
{
sEcho = parameterViewModel.sEcho,
iTotalRecords = notes.Count(),
iTotalDisplayRecords = notes.Count(),
aaData = result
},
JsonRequestBehavior.AllowGet);
}
Все идет вниз, как к тому, что вам нужно, чтобы достичь в вашем сценарии. Если мне не нужно ничего делать, я всегда буду использовать модели просмотра. Если мне нужно обновить некоторые части веб-страницы, я сделаю AJAX
вызов и возврат данных в формате JSON.
Ответ на этот вопрос: * это зависит *. Иногда полезно связывать клиентскую сторону, иногда это не так. Целые книги есть и могут быть написаны на эту тему – Liam
Кроме того, вы можете комбинировать эти два подхода – eternity
@Liam OK, мне было просто интересно узнать, что думал другой разработчик об этой теме и как они работают, и я также хотел узнать больше об этом , –