Net Mvc使用a标签实现多页面跳转如何封装一个类使用路由跳转页面
可以封装一个 HtmlHelper 扩展方法来实现使用路由跳转页面,具体步骤如下:
- 创建一个类,例如 RouteHelper,实现 HtmlHelper 的扩展方法:
public static class RouteHelper
{
public static MvcHtmlString RouteLink(this HtmlHelper htmlHelper, string linkText, string actionName, string controllerName, object routeValues = null, object htmlAttributes = null)
{
var urlHelper = new UrlHelper(htmlHelper.ViewContext.RequestContext);
var url = urlHelper.RouteUrl(new { action = actionName, controller = controllerName, id = routeValues }, null);
var tagBuilder = new TagBuilder("a");
tagBuilder.InnerHtml = linkText;
tagBuilder.MergeAttribute("href", url);
tagBuilder.MergeAttributes(HtmlHelper.AnonymousObjectToHtmlAttributes(htmlAttributes));
return MvcHtmlString.Create(tagBuilder.ToString(TagRenderMode.Normal));
}
}
- 在 View 中使用 RouteLink 方法来生成链接:
@using YourNamespace.Helpers
@Html.RouteLink("Link Text", "ActionName", "ControllerName", new { id = 123 }, new { @class = "my-link-class" })
- 在 Controller 中定义相应的 Action:
public class HomeController : Controller
{
public ActionResult ActionName(int id)
{
//TODO: do something
return View();
}
}
这样就可以使用路由来跳转多个页面了。
原文地址: https://www.cveoy.top/t/topic/bgO6 著作权归作者所有。请勿转载和采集!