`

ASP.NET 常用方法类 - PageBase 页面基类

 
阅读更多

 

ASP.NET 常用方法类 - PageBase 页面基类

转自:http://blog.csdn.net/liaolian9948/article/details/4987108

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;

namespace MyBlog.WEB
{
    public class PageBase : System.Web.UI.Page
    {
        /// <summary>
        /// MD5加密
        /// </summary>
        /// <param name="sInputString">需要加密的字符串</param>
        /// <returns>加密后字符串</returns>
        public static string HashString(string sInputString)
        {
            return System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(sInputString, "MD5");
        }

        /// <summary>
        /// MessageBox提示框
        /// </summary>
        /// <param name="Message">提示信息</param>
        public void MsgBox(string Message)
        {
            ClientScript.RegisterStartupScript(this.GetType(), "", "<script type='text/javascript'>alert('" + Message + "');</script>");
            return;
        }

        /// <summary>
        /// MessageBox提示并转向新页面
        /// </summary>
        /// <param name="Message">提示信息</param>
        /// <param name="URL">跳转的路径</param>
        public void MsgBox(string Message, string URL)
        {
            ClientScript.RegisterStartupScript(this.GetType(), "", "<script type='text/javascript'>alert('" + Message + "');window.location='" + URL + "';</script>");
            return;
        }
        /// <summary>
        /// 弹出新窗口
        /// </summary>
        /// <param name="pagePath">页面路径</param>
        /// <param name="winName">新窗口名称</param>
        /// <param name="winWidth">新窗口宽度</param>
        /// <param name="winHeight">新窗口高度</param>
        public void openNewWin(string pagePath, string winName, int winWidth, int winHeight)
        {
            ClientScript.RegisterStartupScript(this.GetType(), "", "<script type='text/javascript'>window.open('" + pagePath + "','" + winName + "','toolbar=no,menubar=no,titlebar=no,directories=no,resizable=no,scroll=yes,status=no,fullscreen=no,center=yes,width=" + winWidth + ",height=" + winHeight + "');</script>");
            return;
        }

        /// <summary>
        /// 弹出模态窗口
        /// </summary>
        /// <param name="pagePath">页面路径</param>
        /// <param name="winWidth">窗口宽度</param>
        /// <param name="winHeight">窗口高度</param>
        public void openModelWin(string pagePath, int winWidth, int winHeight)
        {
            string temp;
            temp = @"<script language='javascript'>";
            temp += (@"   var sPath ='" + pagePath + "';");
            temp += (@"         strFeatures ='dialogWidth=" + winWidth + "px;dialogHeight=" + winHeight + "px;center=yes;scroll=no;help=no;status: No';");
            temp += (@"         var returnvalue = window.showModalDialog(sPath,'brower',strFeatures);");
            temp += (@"</script>");

            ClientScript.RegisterStartupScript(this.GetType(), "message", temp);
        }

        /// <summary>
        /// 弹出控制父窗口的模态窗口
        /// </summary>
        /// <param name="pagePath">页面路径</param>
        /// <param name="winWidth">窗口宽度</param>
        /// <param name="winHeight">窗口高度</param>
        /// <param name="frameshref">控制父窗口路径</param>
        public void openModelWin(string pagepath, int width, int height, string frameshref)
        {
            string temp = @"<script language='javascript'>";
            temp += (@"   var sPath ='" + pagepath + "';");
            temp += (@"         strFeatures ='dialogWidth=" + width + "px;dialogHeight=" + height + "px;center=yes;scroll=no;help=no;status=no';");
            temp += (@"         var returnvalue = window.showModalDialog(sPath,'brower',strFeatures);");
            temp += (@"         window.location.href = '" + frameshref + "';");
            temp += (@"</script>");

            ClientScript.RegisterStartupScript(this.GetType(), "message", temp);
        }

        /// <summary>
        /// 关闭本窗口
        /// </summary>
        public void CloseWin()
        {
            ClientScript.RegisterStartupScript(this.GetType(), "", "<script type='text/javascript'>window.opener=null;window.close();</script>");
            return;
        }

        /// <summary>
        /// 弹出提示信息,并关闭本窗口
        /// <param name="Words">弹出提示信息内容</param>
        /// </summary>
        public void CloseWin(string Words)
        {
            ClientScript.RegisterStartupScript(this.GetType(), "", "<script type='text/javascript'>alert('"+Words+"');window.opener=null;window.close();</script>");
            return;
        }


        /// <summary>
        /// 关闭本窗口并,重新加载父窗口.
        /// </summary>
        /// <param name="URL">父窗口要加载的URL</param>
        public void reLoadParentAndClose(string URL)
        {
            ClientScript.RegisterStartupScript(this.GetType(), "", "<script type='text/javascript'>window.opener.location='" + URL + "';window.close();</script>");
            return;
        }

        /// <summary>
        /// 显示提示信息,关闭本窗口并,重新加载父窗口.
        /// </summary>
        /// <param name="Words">提示消息内容</param>
        /// <param name="URL">父窗口要加载的URL</param>
        public void ShowWords_reLoadParentAndClose(string Words,string URL)
        {
            ClientScript.RegisterStartupScript(this.GetType(), "", "<script type='text/javascript'>alert('" + Words
+ "'); window.opener.location='" + URL + "';window.close();</script>");
            return;
        }

        /// <summary>
        /// 获取客户端IP
        /// </summary>
        /// <returns></returns>
        public string GetClientIP()
        {
            string result = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
            if (null == result || result == String.Empty)
            {
                result = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];
            }

            if (null == result || result == String.Empty)
            {
                result = HttpContext.Current.Request.UserHostAddress;
            }
            return result;
        }


/// <summary>
        /// 获取Session值
        /// </summary>
        /// <param name="SessionID">要获取的Session值</param>
        /// <returns></returns>
        public string GetSession(string SessionID)
        {
            string restr = "unkown";
            try
            {
                restr = Session[SessionID].ToString();
            }
            catch
            {
            }
            if (restr == "unkown" && restr == null && restr == "")
            {
                Response.Redirect("/Error.aspx?Type=NoPopedom");
            }
            return restr;
        }

        /// <summary>
        /// 写Cookie
        /// </summary>
        /// <param name="CookiesName">Cookie集名称</param>
        /// <param name="name">Cookie名</param>
        /// <param name="Value">值</param>
        public void WritCookie(string CookiesName, string name, string Value)
        {
            HttpCookie cookie = new HttpCookie(CookiesName);
            cookie.Values.Add(name, Value);
            Response.AppendCookie(cookie);
        }

        /// <summary>
        /// 获取Cookie
        /// </summary>
        /// <param name="CookiesName">Cookie集名称</param>
        /// <param name="name">Cookie名</param>
        /// <param name="Value">值</param>
        public string GetCookie(string CookiesName, string name)
        {
            string value = string.Empty;
            try
            {
                HttpCookie cookie = Request.Cookies[CookiesName];
                value = cookie.Values[name];
            }
            catch
            {
                Response.Redirect("/Error.aspx?Type=GetCookie");
            }
            return value;
        }
    }
}

分享到:
评论

相关推荐

    Asp.net实现多语言Demo.rar

    最近给单位做了一个业务下单系统,由于在全球几个国家都有业务办事处,所以下单系统做的是多语言界面的 ...3.创建所有页面的基类PageBase,覆盖InitializeCulture函数 4.页面上的文本值, 表达式语法赋值

    pagebase

    当我们谈论"pagebase"时,这通常是指自定义基类,它扩展了ASP.NET的`System.Web.UI.Page`类,以便为多个ASPX页面提供共享功能和事件处理。`PageBase.cs`文件可能就是这样一个基类的实现。 `PageBase`类是为了解决...

    大学毕业设计实训项目-ASP.NET权限管理系统实现源码.zip

    - **AM.PageBase**:可能是基类页面,提供了一些通用的功能和方法。 - **AM.Web**:Web应用的主项目,包含前端页面和后台逻辑。 - **AM.Model**:模型层,定义了业务对象和数据实体。 - **AM.Business**:业务逻辑层...

    asp.net 继承自Page实现统一页面验证与错误处理

    当页面发生错误时,会触发PageBase_Error方法,该方法记录错误信息,并向用户展示一个带有错误描述和堆栈跟踪的友好页面。Server.ClearError()方法用于清除当前的错误状态,以便后续的请求可以正常处理。 为了实现...

    亮剑.NET深入体验与实战精要2

    3.5 打造自己的页面基类PageBase 161 本章常见技术面试题 164 常见面试技巧之如何做好自我介绍 164 本章小结 165 第4章 Windows窗体编程你也行 167 4.1 创建简单的WinForm项目 168 4.2 创建MDI窗体应用 170 4.3 获取...

    设置ASP.NET页面不被缓存(客户端/服务器端取消缓存方法)

    如果只需要针对特定页面不缓存,可以在页面基类中设置或直接在页面加载时使用SetPageNoCache方法。需要注意的是,虽然这些方法可以有效防止缓存,但它们也可能对页面性能产生影响,因为每次访问都会触发服务器端的...

    亮剑.NET深入体验与实战精要3

    3.5 打造自己的页面基类PageBase 161 本章常见技术面试题 164 常见面试技巧之如何做好自我介绍 164 本章小结 165 第4章 Windows窗体编程你也行 167 4.1 创建简单的WinForm项目 168 4.2 创建MDI窗体应用 170 4.3 获取...

    Asp.Net之后台加载JS和CSS

    在Asp.Net开发时,用到的JS库、通用的CSS等,在许多页面都会用到,而每次都需要手动引入,相当麻烦,而且有时一旦忘了引用,还得找半天才能找到问题。那有没有什么办法能够一劳永逸的呢?答案是有的。  我们知道...

    .net输出重写压缩页面文件的小例子

    3. **页面**:这里指的是ASP.NET Web Forms中的页面对象,即`Page`类。这个基类包含了处理HTTP请求、生命周期事件和页面输出等一系列功能。 具体到提供的代码示例,`PageBase`是自定义的页面基类,继承自`System....

    ZheYK.Base

    在Web开发中,尤其是ASP.NET MVC框架中,`PageBase`通常作为一个基类,为所有控制器类提供通用的功能。这个基类可以包含一些基本的初始化逻辑、视图渲染方法、错误处理机制,甚至是辅助方法,以简化开发者的工作。...

    国际化语言

    Asp.net实现多语言Demo 最近给单位做了一个业务下单系统,由于在全球几个国家都有业务办事处,所以下单系统做的是多...3.创建所有页面的基类PageBase,覆盖InitializeCulture函数 4.页面上的文本值, 表达式语法赋值

    asp.net输出重写压缩页面文件实例代码

    实例代码中的`PageBase`类继承自`System.Web.UI.Page`,并重写了`Render`方法。在这个方法中,首先创建了一个`StringWriter`和`HtmlTextWriter`实例。通过调用基类的`Render`方法,将页面的HTML输出到`...

    asp.net 取消缓存相关问题说明

    ***取消缓存相关问题说明 一、客户端与服务器端缓存的区别 在***中,缓存分为客户端缓存与服务器端缓存。...以上内容涵盖了***在取消缓存方面的一些常用方法及注意事项,希望能对需要相关知识的朋友们有所帮助。

    模块权限设计&&C#Demo

    ### 模块权限设计原理与实现 #### 一、引言 在企业级软件开发过程中,权限管理是一项非常重要的功能,它确保了系统的安全性与...这种设计方法不仅可以应用于ASP.NET Web应用程序,也可以扩展到其他类型的Web应用中。

Global site tag (gtag.js) - Google Analytics