我正在将现有的ASP.NET Web API 2项目迁移到ASP.NET Core。迁移时我无法找到this.Request
个对象。任何人都可以帮我解决这个问题吗?
答案 0 :(得分:0)
您需要像这样覆盖您的类才能获得this.Request
public partial class _Default : System.Web.UI.Page
答案 1 :(得分:0)
这个问题被问到here,但由于ASP.NET Core仍然可能处于RC状态,我想我会在这里回答而不是指那里,因为有些东西已经过时或完全消失了从官方发布。
假设您的控制器类继承自Controller
(或更具体地,ControllerBase
),那么 具有this.Request
属性,您可以看到{{3 }和here。正如Pawel所说,您也可以从this.HttpContext
属性访问它。
请求的网址被分解为HttpRequest
上的多个属性。您可以通过添加using Microsoft.AspNetCore.Http.Extensions;
来访问更友好的API中的网址,以便您访问以下扩展方法:
GetDisplayUrl()
GetEncodedUrl()
就查询字符串而言,HttpRequest
提供QueryString
和Query
属性供您进行互动。
附注:我刚刚在这台笔记本电脑上创建了一个从头开始针对.NET Core上的ASP.NET Core的应用程序,并且Intellisense需要一段时间才能为Request
属性工作,所以我想知道这可能是你的问题。