asp.net-mvc - 在 ASP.NET MVC6 中访问查询字符串

标签 asp.net-mvc asp.net-core-mvc

我正在尝试访问 ASP.NET MVC6 应用程序中的查询字符串参数。但它似乎与 MVC5 和 Web 表单不同,QueryString 没有任何索引器,我不能这样说:

string s = Request.QueryString["key1"] //gives error

所以,我的问题是——如何在 MVC6 中访问查询字符串参数?

令人惊讶 Request.Forms集合按预期工作(如在 MVC5 或 Web 表单中)。

谢谢你。

最佳答案

支持使用索引器获取查询。

在此处查看 MVC 代码测试 - https://github.com/aspnet/Mvc/blob/e0b8532735997c439e11fff68dd342d5af59f05f/test/WebSites/ControllersFromServicesClassLibrary/QueryValueService.cs

context.Request.Query["value"];

另请注意,在 MVC 6 中,您可以使用 [FromQuery] 属性直接从查询中建模绑定(bind)。
public IActionResult ActionMethod([FromQuery]string key1)
{
    ...
}

关于asp.net-mvc - 在 ASP.NET MVC6 中访问查询字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30995080/

相关文章:

dependency-injection - 通过依赖注入(inject)实现后台任务的 DbContext

c# - 将 int 转换为 dropdownlistfor 的字符串

asp.net - 单选按钮列表异常

asp.net-mvc - MVC Razor 表单提交不工作

css - MVC 5 和 Bootstrap 3.3.5

.net - 带有 ASP.NET Core 库的 Docker 容器

javascript - 如何在cshtml文件中调用外部javascript文件

c# - 在 Application Insights 中查看 POST 请求正文

c# - Asp.Net 核心 "remember me"持久性 cookie 在部署后不起作用

azure - 如何为 AKS 和 Helm 设置 ASP.NET CORE Web 和 WebAPI 容器之间的通信