while (dr.Read())
            {
                try
                {                    ClassesRowData crd = new ClassesRowData();
                    crd.ID1 = dr.GetInt32(dr.GetOrdinal("ID"));
                    crd.ParentID1 = dr.GetInt32(dr.GetOrdinal("ParentID"));
                    crd.Title = dr.GetString(dr.GetOrdinal("Title"));
                    crd.EnTitle1 = dr.GetString(dr.GetOrdinal("EnTitle")).ToString();
                    crd.IsOpen1 = dr.GetInt32(dr.GetOrdinal("IsOpen"));
                    crd.CanDelete1 = dr.GetInt32(dr.GetOrdinal("CanDelete"));
                    crd.OrderID1 = dr.GetInt32(dr.GetOrdinal("OrderID"));
                    crd.Url1 = dr.GetString(dr.GetOrdinal("Url"));
                    crd.ClassManager1 = dr.GetInt32(dr.GetOrdinal("ClassManager")).ToString();
                    list.Add(crd);
                }
                catch(Exception ex) 
                {
                    throw ex;
                }
            }   如上例子:
    在读取数据时如果数据库中某一条数据为空,应该怎样避免异常。