.net core 在视图中快速获取路由(Areas、Controller、Action)

我们在.net core中,经常碰到需要获取当前的Areas、Controller、Action,于是小编就扩展了Html,这样即可使用

Html.***来获取这些信息。

具体扩展类如下:

  1. public static class HtmlHelperExtensions

  2. {

  3. #region 路由操作

  4. public static HtmlString A(this IHtmlHelper helper)

  5. {

  6. return new HtmlString(helper.ViewContext.RouteData.Values["area"].ToString());

  7. }

  8. public static HtmlString C(this IHtmlHelper helper)

  9. {

  10. return new HtmlString(helper.ViewContext.RouteData.Values["Controller"].ToString());

  11. }

  12. public static HtmlString T(this IHtmlHelper helper)

  13. {

  14. return new HtmlString(helper.ViewContext.RouteData.Values["Action"].ToString());

  15. }

  16. public static HtmlString AC(this IHtmlHelper helper)

  17. {

  18. var areaName = helper.ViewContext.RouteData.Values["area"].ToString();

  19. var controllerName = helper.ViewContext.RouteData.Values["Controller"].ToString();

  20. return new HtmlString("/" + areaName + "/" + controllerName);

  21. }

  22. #endregion

  23. }

下面我们讲讲怎么使用,我觉得大家应该都懂了,但还是说说吧。

在视图中使用

@Html.A() 获取当前Areas

@Html.C() 获取当前的Controller

@Html.T() 获取当前的Action

@Html.AC() 获取 Areas+Controller

是不是很简单呢

更多精彩文章请关注我们的微信公众号FocusDotCore

原文地址:https://www.cnblogs.com/tianfengcc/p/7851941.html