C# 带参数的MVC路由

C# 带参数的MVC路由,c#,asp.net-mvc,C#,Asp.net Mvc,假设我有一份学生名单 我使用以下操作显示此列表:domain/students/index 现在我有一个学生类型列表(用户可编辑)。例如: 儿童、成人、数学、远程等 我想按类型筛选我的学生索引页,如下所示: domain/students/index/math或domain/students/index/remote 另外,当我要刷新页面时,我希望该域保持不变,这意味着,例如,如果我去编辑学生,它会将我重定向到: domain/students/math/edit/2或类似内容 基本上,我需要一

假设我有一份学生名单

我使用以下操作显示此列表:
domain/students/index

现在我有一个学生类型列表(用户可编辑)。例如:

儿童、成人、数学、远程等

我想按类型筛选我的学生索引页,如下所示:

domain/students/index/math
domain/students/index/remote

另外,当我要刷新页面时,我希望该域保持不变,这意味着,例如,如果我去编辑学生,它会将我重定向到:
domain/students/math/edit/2
或类似内容


基本上,我需要一个高级参数来保存它的状态,或者可能是一种不同的方法

在RouteConfig.cs文件中:

public static void RegisterRoutes(RouteCollection routes)
{
       routes.MapRoute(
       name: "StudentList",
       url: "Students/{type}",
       defaults: new { controller = "Students", 
                       action = "Index", 
                       type = UrlParameter.Optional });
}
在你看来:

 <a href="@Url.RouteUrl("StudentList", 
                         new{ controller = "Students",
                              action = "Index",  
                              type = "math" //or whatever your parameter is
                            })">Math Students</a>


注意:我假设您的控制器名为Students,操作名为Index。在索引操作中使用类型作为参数来筛选学生。

您需要创建一个路由。