相关疑难解决方法(0)

我怎样才能获得网站的基础?

我想写一个小助手方法,它返回网站的基本URL.这就是我想出的:

public static string GetSiteUrl()
{
    string url = string.Empty;
    HttpRequest request = HttpContext.Current.Request;

    if (request.IsSecureConnection)
        url = "https://";
    else
        url = "http://";

    url += request["HTTP_HOST"] + "/";

    return url;
}
Run Code Online (Sandbox Code Playgroud)

这有什么错误,你能想到吗?任何人都可以改进吗?

c# asp.net uri httprequest

175
推荐指数
7
解决办法
23万
查看次数

什么是ASP.NET Core MVC等同于Request.RequestURI?

我发现了一篇博文,展示了如何将熟悉的东西(如HttpResponseMessage)"重新填充"回ASP.NET Core MVC,但我想知道在REST Post方法中使用以下代码执行相同操作的新本机方法是什么.控制器:

// POST audit/values
[HttpPost]
public System.Net.Http.HttpResponseMessage Post([FromBody]string value)
{
    var NewEntity = _repository.InsertFromString(value);

    var msg = new System.Net.Http.HttpResponseMessage(System.Net.HttpStatusCode.Created);
    msg.Headers.Location = new Uri(Request.RequestUri + NewEntity.ID.ToString());
    return msg;

}
Run Code Online (Sandbox Code Playgroud)

在ASP.NET Core MVC项目中,我似乎无法获得Request.RequestUri.

我尝试检查Request,我能够创建这样的函数:

private string UriStr(HttpRequest Request)
{
    return Request.Scheme + "://" + Request.Host + Request.Path; // Request.Path has leading /
}
Run Code Online (Sandbox Code Playgroud)

所以我可以改写UriStr(Request).但我不确定这是对的.我觉得我正在乱砍,并没有正确使用它.

早期非核心ASP.NET MVC版本的相关问题询问如何获取站点的基本URL.

c# asp.net asp.net-core-mvc

33
推荐指数
3
解决办法
2万
查看次数

标签 统计

asp.net ×2

c# ×2

asp.net-core-mvc ×1

httprequest ×1

uri ×1