下一站天后

今朝的容颜老于昨晚

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

     系统很多地方在获取参数,返回对象等方式上没有判断对象为null的情况,这样造成外网一搞就出现黄页!(开发人员写程序不严谨造成)。

例如在写实体类的时候,我们要判断类型是否为空的情况,这里的判断顺序也不可颠倒。

public QsqAdminLog(IDataReader dr)
        {
            _id 
= Convert.ToInt32(dr["LogId"]);
            UserId 
= Convert.ToInt32(dr["UserId"]);
            
if(dr["LoginTime"]!=null && dr["LoginTime"].ToString() != "")
            {
                LoginTime 
= Convert.ToDateTime(dr["LoginTime"]);
            }
            
if(dr["LoginOutTime"]!=null && dr["LoginOutTime"].ToString() != ""  )
            {
                LoginOutTime 
= Convert.ToDateTime(dr["LoginOutTime"]);
            }
        
            UserName 
= dr["UserName"]==null?"":dr["UserName"].ToString();
        }

SqlDataProvider里如果有日期类型的话,也需要判断

cmd.Parameters.Add("@LoginTime",SqlDbType.DateTime).Value = lr.LoginTime.Tostring() ;//== "0001-1-1 0:00:00" ?DBNull.Value:lr.LoginTime;
posted on 2008-08-25 16:57  孙雅玲  阅读(463)  评论(0编辑  收藏  举报