我正在尝试通过URL传递参数。
我正在我的 URL 中传递一个 Guid:
http://localhost:55097/Admin/ListCase/a2cc5900-bdff-41f1-9c2a-21032a5275de
并尝试在下一个视图中捕获它并将其作为参数添加到另一个 URL:
@Html.ActionLink("Add a Cover","CreateCover","Admin", new { id=Request.QueryString[0]})
我试图将其作为 ViewBag 低音并从 QuesryString 中抓取它(如上所示),但出于某种原因,结果链接出现了?最后长度 = 5。不是吉德。
有什么想法吗???
如@ps2goat所说,构造 URL 的方式使 GUID 成为路径的一部分,而不是查询字符串。 您可能还想给它一个用于识别的密钥:
http://localhost:55097/Admin/ListCase/?guid=a2cc5900-bdff-41f1-9c2a-21032a5275de
然后,您可以使用"guid"键检索它:
@Html.ActionLink("Add a Cover","CreateCover","Admin", new { id=Request.QueryString["guid"]})
尝试修改指向其他重载方法的操作链接,并从路由数据收集中获取 id 参数,而不是从查询字符串中获取 id 参数,如下所示,
@Html.ActionLink("Add a Cover","CreateCover", routeValues: new { controller = "Admin", id= Request.RequestContext.RouteData.Values["id"]})