日期:2014-05-18  浏览次数:20476 次

新手问问题,以下两种定义属性方法区别,哪个好?
问题如标题。
从代码上看,我的理解第一种方法是,用时才去GET参数,第二中方法是先GET参数,不管用没用。这样理解对?

代码如下:

C# code

public class HandlerBase : IHttpHandler
{
    public class HandlerBase : IHttpHandler
    {
        protected HttpContext context = null;

        #region 公共属性

        private int cityID = 0;
        /// <summary>
        /// 第一种定义属性方法    
        /// </summary>
        public int CityID
        {
            get
            {
                if (this.cityID == 0) context.Request.ParamesToInt32GET("cityid", 0);
                return cityID;
            }
        }

        private int seriesID = HttpContext.Current.Request.ParamesToInt32GET("seriesid", 0);
        /// <summary>
        /// 第二种定义属性方法  
        /// </summary>
        public int SeriesID
        {
            get
            {
                return seriesID;
            }
        }

        #endregion

        public void ProcessRequest(HttpContext context)
        {
            this.context = context;

            ProcessRequest();
        }

        protected virtual void ProcessRequest() { }

        public bool IsReusable
        {
            get
            {
                return false;
            }
        }
    }
}




------解决方案--------------------
本质上说两者没有什么区别。
------解决方案--------------------

------解决方案--------------------
没啥区别
------解决方案--------------------
如果非要说有什么区别,那就是第一种在多线程环境下是不安全的。
------解决方案--------------------
本质上 一样