百度空间 | 百度首页 
 
查看文章
 
Request扩展的代码(Requst类)
2008-12-24 11:16

这里是Request代码

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


namespace Company.Extend
{
    public class Request
    {
        #region 字符串的变量
        #region 获取方式
        //取值方式
        private string _requestType = "";
        private static readonly Request _queryString = new Request("QueryString");
        /// <summary>
        /// 获取 HTTP 查询字符串变量集合
        /// </summary>   
        public static Request QueryString
        {
            get
            {
                return _queryString;
            }
        }
        private static readonly Request _form = new Request("Form");
        /// <summary>
        /// 获取窗体变量集合
        /// </summary>
        public static Request Form
        {
            get
            {
                return _form;
            }
        }
        private static readonly Request _cookies = new Request("Cookies");
        /// <summary>
        /// 获取客户端发送的 cookie 的集合
        /// </summary>
        public static Request Cookies
        {
            get
            {
                return _session;
            }
        }
        private static readonly Request _session = new Request("Session");
        /// <summary>
        /// 获取 ASP.NET 提供的当前 Session 对象
        /// </summary>
        public static Request Session
        {
            get
            {
                return _session;
            }
        }       
        #endregion

        /// <summary>
        /// 返回QueryString参数
        /// </summary>
        /// <param name="str"></param>
        /// <returns></returns>
        public Parameter this[string str]
        {
            get
            {
                System.Web.HttpContext _context = System.Web.HttpContext.Current;
                Parameter p = new Parameter();
                string value = "";
                switch (this._requestType)
                {
                    case "QueryString":
                        if (_context.Request.QueryString[str] != null)
                        {
                            if (_context.Request.QueryString[str].Trim() != "")
                            {
                                value = _context.Request.QueryString[str];
                            }
                        }
                        break;
                    case "Form":
                        if (_context.Request.Form[str] != null)
                        {
                            if (_context.Request.Form[str].Trim() != "")
                            {
                                value = _context.Request.Form[str];
                            }
                        }
                        break;
                    case "Cookies":
                        if (_context.Request.Cookies[str] != null)
                        {
                            if (_context.Request.Cookies[str].Value.Trim() != "")
                            {
                                value = _context.Request.Cookies[str].Value;
                            }
                        }
                        break;
                    case "Session":
                        if (_context.Session[str] != null)
                        {
                            if (_context.Session[str].ToString().Trim() != "")
                            {
                                value = _context.Session[str].ToString();
                            }
                        }
                        break;
               
                    default:
                       
                        break;
                }
               
                p.ParaVaue = value;
                return p;
            }
        }
        #endregion


        #region 控件类变量
        //控件名称
        private WebControl _requestControlName;
        private static readonly Request _textbox = new Request(new System.Web.UI.WebControls.TextBox());
        /// <summary>
        /// 当前页的TextBox对象
        /// </summary>
        public static Request TextBox
        {
            get
            {
                return _textbox;
            }
        }
        public Parameter this[WebControl ctrl]
        {
            get
            {
                System.Web.HttpContext _context = System.Web.HttpContext.Current;
                Parameter p = new Parameter();
                string value = "";
                //如果是文本框控件
                if (this._requestControlName is TextBox)
                {
                    value=((TextBox)ctrl).Text.Trim();
                }
                p.ParaVaue = value;
                return p;
            }
        }
        #endregion

        #region 构造方法
        private Request()
        {
        }
        /// <summary>
        /// 构造字符串类的参数,如post,get,cookies,session等
        /// </summary>
        /// <param name="requestType"></param>
        private Request(string requestType)
        {
            this._requestType = requestType;
        }
        /// <summary>
        /// 构造控件类的参数,如TextBox
        /// </summary>
        /// <param name="requestControlName"></param>
        private Request(WebControl requestControlName)
        {
            this._requestControlName = requestControlName;
        }
        #endregion
    }
}


类别:Dotnet | 添加到搜藏 | 浏览() | 评论 (0)
 
最近读者:
 
网友评论:
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
验证码: 请点击后输入四位验证码,字母不区分大小写
      

     

©2009 Baidu