代码之家  ›  专栏  ›  技术社区  ›  nerraga

ASP。NetMVC支持嵌套资源?

  •  12
  • nerraga  · 技术社区  · 16 年前

    这就是我要找的uri方案,

    /活动/10/任务/1/编辑 或 /活动/10/任务/编辑/1

        routes.MapRoute(null,
            "Activity/{activityId}/Task/{action}/{id}", 
            new { controller = "Task", action = "Edit", activityId = "", id = "" });
    
    1 回复  |  直到 13 年前
        1
  •  13
  •   Tomas Aschan    16 年前

    为添加默认值 activity :

    routes.MapRoute(null,
        "Activity/{activityId}/Task/{action}/{id}/{activity}",
        new { 
            controller = "Task", 
            action = "Edit", 
            id = "",
            activityId = "", 
            activity = "" });
    

    还要记住,此路由只会接收表单上的url

    /Activity/10/Edit/1/theActivity
    

    而你的例子

    /Activity/10/Edit/1
    

    controller = "Activity"
    action = "10"
    id = "Edit/1"
    

    菲尔·哈克 Routing Debugger 对于ASP。NET MVC对于弄清楚如何处理这些事情非常有用。..