“HttpRequest”不包含“Params”的定义

Ron*_*eau 6 .net c# asp.net asp.net-core-mvc asp.net-core

我正在使用.NET Core 2.0.2C#中创建ASP.NET web 应用程序。

每次我Request.Url在控制器中使用时,dotnet run都会输出错误:

错误CS1061:“HttpRequest”不包含“Url”的定义,并且找不到接受“HttpRequest”类型的第一个参数的扩展方法“Url”

同样的事情也会发生在Request.Params. 尽管.NET 文档说该Params属性有一个 getter。

我设法找到了解决方法Request.Url:我使用该Request.GetUri()方法。但是我找不到这样的替代品Request.Params

以下是我的using发言:

using System;
using System.Diagnostics;
using area.Models;
using Microsoft.AspNetCore.Identity;
using System.Threading.Tasks;
using Microsoft.ApplicationInsights.AspNetCore.Extensions;
using Microsoft.AspNetCore.Mvc;
using Tweetinvi;
using Tweetinvi.Models;
Run Code Online (Sandbox Code Playgroud)

为什么我会收到这些错误?你知道解决办法吗?否则,您有解决方法吗Request.Params

Shy*_*yju 7

您过去从通用请求参数中获取的内容可以在 、 等特定属性中Request访问。QueryCookiesForm

如果您尝试访问查询字符串项值,则可以使用该Request.Query属性。

var v = Request.Query["oauth_verifier"];
Run Code Online (Sandbox Code Playgroud)

您可以使用TryGetValue集合上的方法来获取值(如果存在)。

if (Request.Query.TryGetValue("oauth_verifier",out StringValues val))
{
    var theValue = val[0];
    var orUseThis = val.ToString();
    // Use theValue as needed
}
Run Code Online (Sandbox Code Playgroud)