日期:2014-05-17  浏览次数:20645 次

关于一个判断的
 现在我想做一个加班时间统计,但是就出现了一个问题,就是只有加班的人,才会有加班的时间,没有加班的人就没有记录。这样就会出现一个问题,当登陆的userID没有加班时,便会因为空值报错,现在我做了一个判断,不过还有问题,会提示



请问我if那边判断应该怎么改哦
public tb_OvertimeSheetTable GetOverTime(int id)
        {
            using (SqlConnection con1 = new SqlConnection(ConnString))
            {
                con1.Open();

                string sqlStr = "select Sum(Overtime) from tb_OvertimeSheet where UserID = @id";
                SqlCommand com = new SqlCommand(sqlStr, con1);
                com.Parameters.Add("@id", SqlDbType.Int).Value = id;
                SqlDataReader dr = com.ExecuteReader();
                tb_OvertimeSheetTable s = new tb_OvertimeSheetTable();

                if (dr.Read())
                {

                    if (dr.GetInt32(0) != null)
                    {
                        s.Overtime = Convert.ToInt32(dr.GetInt32(0));
                    }
                    else
                    {
                        s.Overtime = 0;
                    }
                }
                return s;
            }
        }

------解决方案--------------------
if (!string.IsNullOrEmpty(dr[0].ToString