我的应用程序有以下设置:
routes.MapRoute("Default",
"{controller}/{action}/{idt}",
new { controller = "Home",
action = "Index",
idt = UrlParameter.Optional });
我在我的DB / Model中使用了整数的GUID,用于idt参数和主键。
我有,在我的应用程序的“主”菜单中:
@Html.ActionLink("Create invoice", "Create", "Invoices")
如果我启动应用程序并查看此链接指向的路径,那么它是正确的:/Invoices/Create
但是,由于此路径也用于编辑发票,如果我打开了一个路径为/Invoices/Create/0eb262cc-a623-41f5-9b32-fd452691f426
的页面,然后查看“主”链接的路径,则指向{ {1}}。
答案 0 :(得分:1)
由于路径集合包含idt
的值,它将使用该值呈现URL。
您只需将空白值传递给
即可@Html.ActionLink("Create invoice", "Create", "Invoices",new {idt=""})
我相信这应该有助于解决问题。
答案 1 :(得分:1)
试试这个:
@Html.ActionLink("Create invoice", "Create", "Invoices", new {idt = ""}, new {})
这应解决长度= 8的问题。
答案 2 :(得分:0)
尝试this重载
@Html.ActionLink("Create invoice", "Create", "Invoices", null,null)