标题几乎是个问题,我正在尝试使用.NET Core来实现。
我在一个名为SharedViewModelsController.cs的文件中有一个方法
public IActionResult Index(int? wsId)
{
foreach (WorkShiftTask wstask in _context.WorkShiftTask)
{
SharedViewModel detail = new SharedViewModel();
detail.TaskDescription = wstask.TaskId == null ? "N/A" : _context.Task.Find(wstask.TaskId).TaskDescription;
detail.TaskStart = wstask.TaskStart;
detail.TaskEnd = wstask.TaskEnd;
detail.WorkShiftTaskId = wstask.WorkShiftTaskId;
if (wstask.WorkShiftId == wsId)
{
detailList.Add(detail);
}
}
return View(detailList);
}
用于制作 Views / SharedViewModels / Index.cshtml
我想将该视图调用到属于另一个控制器 WorkShiftDetailViewModelsController.cs 的另一个视图中,因此可以将其附加到 Views / WorkShiftDetailViewModels / Edit.cshtml 中。 / p>
我尝试通过此操作来调用它
@await Html.PartialAsync("~/Views/SharedViewModels/Index.cshtml");
但是我收到以下错误
处理请求时发生未处理的异常。
InvalidOperationException:传递给ViewDataDictionary的模型项的类型为'ExploFormsDB.ViewModels.WorkShiftDetailViewModel',但是此ViewDataDictionary实例需要模型类型为'System.Collections.Generic.IEnumerable`1 [ExploFormsDB.ViewModels.SharedViewModel] '。
是否可以使用部分视图或不使用部分视图?
答案 0 :(得分:0)
您需要返回以下内容-
return RedirectToAction("ActionName", "MyController");
“ ActionName”是返回视图的操作的名称