zoukankan      html  css  js  c++  java
  • asp.net通过基类实现统一脚本和样式的管理

    之前写PHP代码时经常把javascript脚本的引用和css样式的引用放到一个php文件中,然后通过include方式包含进来。现在使用asp.net开发程序。发现asp.net并没有include方法。想到C#是面向对象编程,通过基类使派生类继承应该能够实现统一管理javascript和css。

    实现的基类如下:

    /// <summary>
    /// 页面基类
    /// </summary>
    public class BasePage : Page
    {
            #region 构造函数
            public BasePage()
            {
                
            }
            #endregion
    }

    输出脚本和样式的类如下:

    public void WriteCommonScriptAndStyle()
    {
        Literal lit = new Literal();
        StringBuilder script = new StringBuilder();
        script.Append("<script type=\"text/javascript\" src=\"{0}/js/jquery.min.js\"></script>\r\n");
        lit.Text = script.ToString();
        Header.Controls.Add(lit);
    }

    这样就可以实现脚本和样式的统一添加了。另外,通过基类继承也可以实现权限认证,这个功能比较适用于网站需要登录的用户。

    我的做法是这样的:

    #region 页面初始化事件
    /// <summary>
    /// 页面初始化事件。
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected virtual void Page_Init(object sender, EventArgs e)
    {
        Response.Buffer = true;
        Response.ExpiresAbsolute = DateTime.Now.AddDays(-1);
        Response.Expires = 0;
        Response.CacheControl = "no-cache";
        ////用户未登录。
        if (CurrentUser == null)
        {
            string backUrl = Request.Url.AbsoluteUri.Replace("&", "$apm;");
            Response.Redirect(string.Format("~/userLogin.aspx?BackUrl={0}", backUrl), true);
        }
        else
        {
            officeModel = CurrentUser ?? new UserModel();
        }
        //这里用来输出公共样式和脚本的包含
        WriteCommonScriptAndStyle();
    }
    #endregion
  • 相关阅读:
    接Oracle11g_client精简版安装步骤(2019年11月18日)之Plsql配置
    Oracle11g_client精简版安装步骤(2019年11月18日)
    PC端微信版本过低问题
    Windows下Nginx无法启动且进程里没有?
    Eclipse中复制项目后,怎么更改项目名等相关配置?(2019年10月17日)
    tomcat改端口号
    java基础
    数据库
    数组相关
    Linux系统实战
  • 原文地址:https://www.cnblogs.com/lifeil/p/2917018.html
Copyright © 2011-2022 走看看