首页 / 问答 / ASP.NET Core MVC应用程度中如何读取当前URL请求参数(QueryString)的值?

ASP.NET Core MVC应用程度中如何读取当前URL请求参数(QueryString)的值?

.NET C# HTTP .NET Core ASP.NET Core 3.59K 次浏览
0

在ASP.NET MVC 5的应用程序开发中,要读取当前URL请求中的参数值,我们可以使用Request.QueryString,如下:

var myQueryString = Request.QueryString["myQueryString"]

但在ASP.NET Core MVC中没有了Request.QueryString,有Request.Query可以读取到当前请求的参数,但其返回值是StringValues,类似如下:

string myQueryString = HttpContext.Request.Query["myQueryString"]

那么,在ASP.NET Core MVC应用程度中,有哪些方式可以读取当前URL请求参数(QueryString)的值呢?

回复 [×]
提交评论
请输入评论内容

3 个回答

  • 0

    在ASP.NET Core MVC或者ASP.NET Core Web API的应用程序中,你可以使用[FromQuery]这种特性可绑定特定的参数实体映射,示例代码如下:

    Rector的个人主页

    Rector

    2020-01-09 回答

    • 0

      如果你想要使用Request.Query["page"]这种方式来读取当前URL的参数值,虽然它返回的是一个IQueryCollection,但如果当URL中有且仅有一个指定参数名的时候,你可以使用.ToString()方法来得到参数的值,如下:

      当URL中的同一个参数名被指定多次时,会返回以逗号分隔的字符串,比如URL参数字符为?page=1&page=2,通过ToString()方法得到的结果为1,2

      所以,建议最好还是使用[FromQuery]这种绑定特定查询参数实体映射的方式来读取URL参数。

      Rector的个人主页

      Rector

      2020-01-09 回答

      • 0

        如果要在Razor视图中获取当前URL的请求参数,则可以如下:

        Rector的个人主页

        Rector

        2020-01-09 回答

        我来回答