下面是我操作数据库的一个函数,表名为NewsList,包含PubTime Title Author Content Class State IsHot几个字段,运行是出现错误:名为“1”的列已属于此 DataTable。如果不要最后一句table.Columns.Add(reader["IsHot"].ToString());程序可以正常运行,一加上就报错,大家看看是什么原因,帮忙改改,解释解释错在何处
public static DataTable GetNewsByid(string ID)
        {
            SqlConnection sqlCnn = new SqlConnection(strCnn);
            sqlCnn.Open();            string sqlCmd = "select * from NewsList where NewsID='" + ID + "'";
            SqlCommand sqlSelect = new SqlCommand(sqlCmd, sqlCnn);
            DataTable table = new DataTable();
            SqlDataReader reader = sqlSelect.ExecuteReader();
            if (reader.Read())
            {
                table.Columns.Add(reader["PubTime"].ToString());
                table.Columns.Add(reader["Title"].ToString());
                table.Columns.Add(reader["Author"].ToString());
                table.Columns.Add(reader["Content"].ToString());
                table.Columns.Add(reader["Class"].ToString());
                table.Columns.Add(reader["State"].ToString());
                table.Columns.Add(reader["IsHot"].ToString());            }
            reader.Close();
            sqlCnn.Close();
            return table;
        }