我正在尝试访问我的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]属性直接从查询建模绑定。
public IActionResult ActionMethod([FromQuery]string key1) { ... }