【问题标题】:ASP.NET MVC - how to create action link to fit controller/{id}/actionASP.NET MVC - 如何创建适合控制器/{id}/action 的操作链接
【发布时间】:2016-03-21 00:56:10
【问题描述】:

我有一个类似的路线图:

routes.MapRoute(
    name: "ConversationDetails",
    url: "Conversations/{id}/Details",
    defaults: new
    {
        controller = "Conversations",
        action = "Details"
    }
);

我想创建一个适合我的路径的@Html.ActionLink。 当我输入我的链接时,我想生成id,它将跟随控制器“Conversations”名称,然后我想添加“Details”作为我想要输入并传递的操作id 参数。有可能吗?

【问题讨论】:

  • @Html.ActionLink("xxx", "Details", "Conversations", new { id = someValue }, null)(假设您的 ConversationDetails 路由在 Default 路由或任何其他匹配的路由之前)
  • 但这正在创建:/Conversations/Details/1 我需要/Conversations/1/Details
  • 那么您的ConversationDetails 不是您表中的第一条路线! (顺序或路线很重要)
  • 感谢您的回复。那不是秩序的问题,而是路线图内部的问题。现在它可以正常工作并生成我的id 它应该在哪里:) 非常感谢!

标签: c# asp.net asp.net-mvc routing actionlink


【解决方案1】:

您可以使用 URL.RouteURL 来实现您想要做的事情。看到这个:Using Url.RouteUrl() with Route Names in an Area

取自并修改:

Url.RouteUrl("ConversationDetails", new { id = 5 })

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-10-22
    • 1970-01-01
    • 2023-03-04
    • 1970-01-01
    • 1970-01-01
    • 2012-03-19
    • 1970-01-01
    相关资源
    最近更新 更多