cmd1.CommandText = "SELECT distinct MbrBtch from Member where MbrStrm='"+DrpDwnStrm .SelectedItem .Text +"'";
cmd1.Connection = con;
DataTable Table1;
Table1 = new DataTable("mbr");
DataRow Row1;
DataColumn MbrBatch = new DataColumn("MbrBatch");
MbrBatch.DataType = System.Type.GetType("System.Int32");
Table1.Columns.Add(MbrBatch);
try
{
con.Open();
SqlDataReader RdrMbr = cmd1.ExecuteReader();
while (RdrMbr.Read())
{
Row1 = Table1.NewRow();
Row1["MbrBatch"] = Convert.ToInt32(RdrMbr.GetInt32(0));
Table1.Rows.Add(Row1);
}
RdrMbr.Close();
}
finally
{
con.Close();
}
DrpDwnBtch.DataSource = Table1;
this.DrpDwnBtch.DataTextField = "MbrBatch";
DrpDwnBtch.DataBind();
//here MbrBtch is numeric type attribute of sql server.
问问题
513 次
2 回答
1
My guess would be the below line gives you an error.
Change the line
Row1["MbrBatch"] = Convert.ToInt32(RdrMbr.GetInt32(0));
with
int mbr = 0;
if (Int32.TryParse(RdrMbr[0], out mbr))
Row1["MbrBatch"] = mbr;
于 2012-04-27T17:15:54.277 回答
0
MbrBtch 列中是否可能存在空值?如果是这样,您需要像这样检查 null:
if (!RdrMbr.IsDBNull(0))
Row1["MbrBatch"] = Convert.ToInt32(RdrMbr.GetInt32(0));
else
// Set value to what it should be if null, perhaps a -1 or 0
于 2012-04-27T17:44:07.810 回答