Я разрабатываю проект MVC и im, используя Ajax для отображения списка смен.Заполняют частичный просмотр на странице load
Вот моя родительская страница, shifts.chtml:
@model UI.ViewModels.ViewModelShiftList
<h2>Shifts</h2>
@Ajax.ActionLink("View All Shifts", "AllShifts", "Shifts",
new AjaxOptions
{
UpdateTargetId="searchResults",
HttpMethod="GET", //default
InsertionMode= InsertionMode.Replace, //replace
LoadingElementId="progress"
})
<div id="searchResults">
@Html.RenderPartial("_ShiftList",model)
</div>
Heres действие контроллера для указанной выше странице:
public ActionResult Shifts()
{
ViewModelShiftList viewModel = new ViewModelShiftList
{
Shifts = _shiftService.GetShifts().ToList()
};
return View(viewModel);
}
Должен ли я не быть в состоянии отправить ViewModel производится здесь в парциальное Посмотреть? Или мне нужно создать другое действие для частичного просмотра? Если да, то каков правильный способ отправить действие контроллеру частичного просмотра?
Ошибка им собирающий в этот момент:
@Html.RenderPartial("_ShiftList",model)
// не может impilicty преобразовать тип ничтожным объекта
Можете ли вы рассказать о «не работает»? Какую ошибку вы получаете? – Trent
Мы действительно могли использовать больше данных. Однако одна вещь, которая может не работать, заключается в том, что вы * можете * указать свой контроллер в своем «RenderPartial» в зависимости от контекста того, где он используется. – JasCav
Я обновил сообщение, чтобы сделать его более понятным, как вы определяете, какой контроллер и какое действие вы хотите использовать для частичного просмотра, я полагаю, что это моя точка. – Dez79