首页 > 代码库 > .NET 绝对路径的配置

.NET 绝对路径的配置

      有时候因为用IIS配置网站,会导致一些全局引用有路径问题无法引用到。今天就说一下,关于全局引用的绝对路径的配置,譬如,由于IIS配置的虚拟路径,一些CSS,JS的引用找不到,又或者自定义的一些跳转出现404。这些问题很简单也很基础。

     我们可以定义一个BasePage类,把一些页面公共的引用,提示信息放在里面,这样每个页面只要继承这个类,就可直接使用BasePage里的方法了(面向对象的三大特性之一:继承都知道的吧!)。首先定义一个绝对路径的字符串

    /// <summary>    /// 定义绝对路径    /// </summary>    public string ApplicationPath = "";

  然后初始化。注意一点,这里使用的派生类实现基类的方法。使用override重写此功能,使用base关键字继承基类的方法。

    /// <summary>    ///初始化函数    /// </summary>    /// <param name="e"></param>    protected override void OnInit(EventArgs e)    {        base.OnInit(e);        InitApplication();    }

  最后实现绝对路径的赋值

/// <summary>
/// 初始化请求路径
/// </summary>
public void InitApplication()
{
  #region 定义ApplicationPage
  this.ApplicationPath = HttpContext.Current.Request.ApplicationPath == "/" ? "" : HttpContext.Current.Request.ApplicationPath + "";
  #endregion
}

  此时ApplicationPath 就是网站的根名称。

.NET 绝对路径的配置