【发布时间】:2016-08-28 18:02:51
【问题描述】:
我有一组标准路由,跨控制器使用,例如 {controller}/{action}/{clientId}/{id}。所有控制器都使用这些值中的每一个,但每个控制器可能在不同的上下文中使用 {id}。
例如,LabController 上的 {id} 可能是“labId”,而 MembershipController 上的 {id} 可能是“membershipId”等。我不会在每个控制器上的每个操作方法中使用“id”,而是喜欢传入“labId”和“membershipId”作为各自控制器中操作的参数。
我可以为每个动作使用 [Bind(Prefix="id")],但我希望有一种方法可以在控制器级别控制它。我还试图避免类似路径的多条(几乎相同)路线。谢谢。
编辑:澄清一下,我正在尝试将这些绑定到我的操作参数。如:
public ActionResult GetLab(int labId)
或
public ActionResult GetMembership(int membershipId)
全部使用相同的路由 - 只需将 {id} 部分绑定为在这些情况下 labId 和 membersId 的别名,而不必每次都使用 [Bind]。
【问题讨论】:
标签: c# asp.net-mvc asp.net-mvc-routing