生产时HttpContext.Current.Request.ApplicationPath为空

时间:2012-08-09 18:44:15

标签: c# asp.net

在我的开发服务器HttpContext.Current.Request.ApplicationPath上正确返回路径,但在生产时它返回空。

为什么会这样?

我正在使用它来构建URL,现在在生产环境中,链接看起来不像:

http://section/page1.aspx

但它应该是:

https://www.example.sub.com/section/page1.aspx

导致这种情况的原因是什么?

2 个答案:

答案 0 :(得分:3)

ApplicationPath属性返回应用程序所在文件夹的路径,但不包含域名。

我想您已将应用程序放在与开发服务器中域名同名的文件夹中。然后,该属性返回文件夹的名称,而不是实际的域名。

答案 1 :(得分:0)

请试试这个

public static string RootURL {
get {
    var _with1 = System.Web.HttpContext.Current.Request;
    return _with1.Url.Scheme + "://" + _with1.Url.Host + _with1.ApplicationPath;
}

}

当您需要具有应用程序路径的根URL时使用此功能 如果您有问题,请尝试告诉我.......