我最近刚刚从 ASP.NET MVC 切换到使用 .Core 2,但我不知道如何在 Core 中获取当前 URL。我可以使用以前的 asp.net 版本中的 Request 轻松获得它,但由于这在 .Net Core 中不再有效,我不知所措。

到目前为止,我无法从我的谷歌搜索中找到任何方法。

任何帮助表示赞赏。谢谢!

最佳答案

ConfigureServices 文件的 Startup.cs 方法中,添加以下行:

services.AddHttpContextAccessor();
并且在使用依赖注入(inject)时,您现在可以在整个代码中访问 IHttpContextAccessor 接口(interface)。
用法如下:
public class CustomerRepository
{
    private readonly IHttpContextAccessor _context;

    public CustomerRepository(IHttpContextAccessor context)
    {
        _context = context;
    }

    public string BaseUrl()
    {
        var request = _context.HttpContext.Request;
        // Now that you have the request you can select what you need from it.
        return string.Empty;
    }
}
希望这能回答你的问题:)

关于c# - 在 ASP.Net Core 中获取基本 URL,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52769202/

10-16 09:56