执行处理程序的子请求时出错 - 从控制器调用的部分视图

问题描述 投票:0回答:2

我的主控制器中有一个方法可以返回部分视图,但是当我运行我的应用程序时,我收到错误。

执行处理程序“System.Web.Mvc.HttpHandlerUtil+ServerExecuteHttpHandlerAsyncWrapper”的子请求时出错。

我的控制器中的方法获取模型并返回部分视图。

public PartialViewResult _GetToDo()
        {
            using (KnightOwlContext db = new KnightOwlContext())
            {
                var todoList = new List<ViewModels.ToDo>();
                DashboardHelper dashHelper = new DashboardHelper(db);

                var results = dashHelper.GetToDoList(StaffId);

                foreach(var r in results)
                {
                    todoList.Add(new ViewModels.ToDo()
                    {
                        ToDoId = r.ToDoId,
                        Complete = r.Complete,
                        Date = r.Date,
                        Priority = GetPriority(r.Priority),
                        StaffId = r.StaffId,
                        Text = r.Text
                    });
                }

                return PartialView("_ToDo", todoList);
            }
        }

我在我的视图中调用这个方法:

@Html.Action("_GetToDo", "Home")

该方法位于我的“主控制器”中,并且从“视图”>“主页”>“索引”调用部分视图

到目前为止,我已经尝试过 Html.Partial 和 Html.RenderPartial,但它们都没有使用不同的错误消息。我完全不知道如何返回部分视图,我做错了什么?

c# asp.net-mvc asp.net-mvc-4 partial-views
2个回答
0
投票

在 _ToDo 视图创建期间,勾选“创建为部分视图”复选框。如果您创建引用布局页面的部分视图,那么您将陷入无限循环,一遍又一遍地执行布局页面。


0
投票

当被调用的页面具有无法解析的@model指令时,也会引发此错误。

Ex: 'Management.ViewModels.Utilities.SomeExampleVM' -> 'Management.SharedLibrary.Compatibilty.Utilities.SomeExampleVM'

我们的一个项目有多个开发人员,并且有一个人进行了此更改,然后错过了更新页面上的参考。抛出了 OP 错误。将页面的模型调用重定向到新位置解决了错误。

© www.soinside.com 2019 - 2024. All rights reserved.