Url.来自Html helper扩展的RouteUrl

本文关键字:RouteUrl 扩展 helper 来自 Html Url | 更新日期: 2023-09-27 17:49:35

我正在扩展Html.HtmlHelper以根据我的页面呈现面包屑:

public static HtmlString RenderBreadCrumb(this HtmlHelper helper, PageType pagetype, object Model)

我如何使用Url.RouteUrl内的一个HtmlHelper渲染URL?

Url.来自Html helper扩展的RouteUrl

您需要使用请求上下文创建一个新的UrlHelper实例。

UrlHelper Url = new UrlHelper(helper.ViewContext.RequestContext);
Url.RouteUrl(…);

用UrlHelper扩展名代替:

public static string RenderBreadCrumb(this UrlHelper helper, PageType pagetype, object Model)

然后调用:

 @Url.RenderBreadCrumb(pageType, Model)