Asp.net Mvc Framework可以在Controller中使用的Url.Action方法

来源:互联网 发布:淘宝不能支付怎么回事 编辑:程序博客网 时间:2024/05/01 08:15

原本的Url.Action方法是利用RouteCollection来实现Url的Routing的。

所以这里用一个扩展方法重现一下

  1. using System.Web.Routing;
  2.     static public class CUrl {
  3.         public static string Action(this Controller c, string controller, string action) {
  4.             RouteValueDictionary rvd = new RouteValueDictionary();
  5.             rvd.Add("controller", controller);
  6.             rvd.Add("action", action);
  7.             return RouteTable.Routes.GetVirtualPath(c.ControllerContext, rvd).VirtualPath;
  8.         }
  9.     }
使用方法:
  1. public ActionResult Index() {
  2.             ViewData["Message"] = this.Action("home""about");
  3.             return View();
  4.         }
原创粉丝点击