【问题标题】:matching URL parameter spanning multiple "/" in ASP.NET MVC在 ASP.NET MVC 中匹配跨越多个“/”的 URL 参数
【发布时间】:2010-02-20 02:14:19
【问题描述】:

在 ASP.NET MVC 中匹配跨越多个“/”的 URL 参数的最佳方法是什么?

例如网址:http://example.com/controller/action/p1/p2/p3/p4

我只想将一个参数传递给操作方法(上面,它是“p1/p2/p3/p4”)。这里,参数可以有任意数量的子项( p1/.../pn )。

完成此任务的最佳方法是什么?有什么方法可以使用纯 MVC 路由来实现这一点?

【问题讨论】:

    标签: asp.net-mvc routing


    【解决方案1】:

    如果我理解清楚你想这样做

    routes.MapRoute(null, "{controller}/{action}/{*p}", new { controller = "Home", action = "Index" });
    
    public class HomeController : Controller
    {
        public ActionResult Index(string p)
        {
            string[] parameters = p.Split('/');
            //Whatever
        }
    }
    

    或者你可以用正则表达式来做,你可以看看这个link

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-10-08
      • 2011-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-27
      • 2016-07-27
      • 2023-02-03
      相关资源
      最近更新 更多