Asp.net core asp.net核心中的ControllerContext.ParentActionViewContext
如何访问Asp.NETCore中的ParentActionViewContext,我使用了以下命令,但在Core中它们不可用。Asp.net core asp.net核心中的ControllerContext.ParentActionViewContext,asp.net-core,asp.net-core-mvc,Asp.net Core,Asp.net Core Mvc,如何访问Asp.NETCore中的ParentActionViewContext,我使用了以下命令,但在Core中它们不可用。 ControllerContext.ParentActionViewContext.RoutedData.Values[“controller”].ToString(),ControllerContext.ParentActionViewContext.ViewBag.Model作为MyViewModel 由于.NETCore上的信息匮乏,我无法找到任何与这些相关的信息
ControllerContext.ParentActionViewContext.RoutedData.Values[“controller”].ToString()代码>,ControllerContext.ParentActionViewContext.ViewBag.Model作为MyViewModel
由于.NETCore上的信息匮乏,我无法找到任何与这些相关的信息
提前谢谢
- 要获取路由数据,您需要使用
ControllerContext.ActionDescriptor
而不是ControllerContext.ParentActionViewContext
现在:
ControllerContext.ParentActionViewContext.RouteValues.Values;
- 关于获取
模型
。控制器类具有自己的属性:
public dynamic ViewBag { get; }
public ViewDataDictionary ViewData { get; set; }
所以你可以用
var myModel = this.ViewData.Model as MyViewModel;
您无法找到ParentActionViewContext
,因为ASP.Net Core中没有子操作。它们已被替换为
您只需调用它们并传递所需的任何数据,而无需再次通过请求管道(即没有模型绑定、过滤器或独立的http上下文)
- 这是一篇很好的介绍性文章