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
  • 相关阅读:
    23种设计模式
    设计模式中类的关系
    简单工厂模式
    SQL正则表达式
    C#中各种计时器
    C# List 排序
    常见名词解释
    PetaPoco入门
    jQuery UI Dialog
    c# winform 获取当前程序运行根目录
  • 原文地址:https://www.cnblogs.com/lifeil/p/2917018.html
Copyright © 2011-2022 走看看