gpt4 book ai didi

asp.net-mvc - 如何找出 Action 在 ASP.NET MVC 中路由到的位置?

转载 作者:行者123 更新时间:2023-12-04 06:58:09 25 4
gpt4 key购买 nike

我认为标题没有任何意义,所以我希望我能解释得足够好。

我有带有操作 EditItem 的 Controller 项。 EditItem从很多地方路由到,比如

/Item/Browse/ByCategory
/Item/Browse/ByType
/Item/Browse/ByWhatever

我真正想要的是将用户返回到他在项目上单击“编辑”的页面。

我知道我可以通过为 EditItem 操作传递一个 ?ReturnUrl 参数来做到这一点,但我一直想知道,是否有可能找出用户来自哪里,比如引用...

最佳答案

刚刚创建了测试解决方案,所以我相信这会奏效。
1)在默认路由之前创建新路由:

routes.MapRoute("EditItem",
"EditItem/{referrer}/{id}",
new {controller = "Item", action = "EditItem",id = "",referrer = "ByCategory"}
);

2) 在您的 3 个 View 中的任何一个上使用 EditItem 链接:
<%= Html.RouteLink("Edit Item 1", "EditItem", 
new {referrer = ViewContext.RouteData.Values["action"], id = 1}) %>

3) 在 EditItem View 上使用此后退按钮:
<%= Html.RouteLink("Back", "Default", 
new { action = ViewContext.RouteData.Values["referrer"]})%>

使用路由使 URL 更加美观和用户友好。

关于asp.net-mvc - 如何找出 Action 在 ASP.NET MVC 中路由到的位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2290328/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com