系统很多地方在获取参数,返回对象等方式上没有判断对象为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;

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-01-25
  • 2021-12-19
  • 2022-12-23
猜你喜欢
  • 2022-01-01
  • 2022-02-24
  • 2022-12-23
  • 2022-12-23
  • 2021-05-20
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案