如何在视图中访问querystring
值?
答案 0 :(得分:59)
在视图中访问查询参数不是一个好的设计。视图应使用控制器提供的模型。因此控制器读取查询参数并将它们传递给视图。如果您想忽略此规则,您可以随时在视图中执行此操作:
<%= Request["SomeParameter"] %>
但我强烈反对你这样做。
答案 1 :(得分:20)
在View中,您可以直接访问它。不需要在Controller中编写任何代码,尽管你可以。
例如 - 如果您的查询字符串具有名为id的参数,则类似于?id = 1
Razor语法:
@Request.QueryString["id"]
答案 2 :(得分:7)
我会读取Controller中的查询字符串值,然后将该值设置为ViewBag中的属性。然后可以从视图中读取ViewBag属性。
e.g:
ViewBag.MyQSVal = Request.QueryString["myValue"];
然后,在您的视图中:
@if(ViewBag.MyQSVal == "something"){ ... }
答案 3 :(得分:0)
正如Darin建议你不要在视图中使用Querystring。但有一点是你可以在你的视图中访问Request变量,因为它的Asp.Net,如果你访问它,你就拥有了那里的所有函数和成员
答案 4 :(得分:0)
要在 .Net Core 中执行此不良做法:
@Context.Request.Query["SomeParameter"]