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
私の推測では、以下の行でエラーが発生します。
行を変更する
Row1["MbrBatch"] = Convert.ToInt32(RdrMbr.GetInt32(0));
と
int mbr = 0;
if (Int32.TryParse(RdrMbr[0], out mbr))
Row1["MbrBatch"] = mbr;
于 2012-04-27T17:15:54.277 に答える
0
MbrBtch列にnull値がある可能性はありますか?その場合、次のように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 に答える