C# 4.0 asp.net中的索引超出范围异常
在尝试连接到数据库时,我在页面加载方法中编写了以下代码:C# 4.0 asp.net中的索引超出范围异常,c#-4.0,C# 4.0,在尝试连接到数据库时,我在页面加载方法中编写了以下代码: SqlConnection con = new SqlConnection(constring); SqlCommand cmd = new SqlCommand(); cmd.CommandType = CommandType.Text; cmd.Connection = con; con.Open(); cmd.CommandText = "select pid from pid";
SqlConnection con = new SqlConnection(constring);
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.Text;
cmd.Connection = con;
con.Open();
cmd.CommandText = "select pid from pid";
SqlDataAdapter da = new SqlDataAdapter();
DataSet ds = new DataSet();
DataTable dt = new DataTable();
da.SelectCommand = cmd;
da.Fill(dt);
a = Convert.ToInt32(dt.Rows[0][0].ToString()) + 1;
con.Close();
return a;
我在代码行“a=Convert.ToInt32(dt.Rows[0][0].ToString())+1”中得到一个错误,如下所示:
索引超出范围异常
位置0处没有行
如何继续?您的查询可能没有返回任何行。相应地进行处理(如果查询可能不返回任何行,请添加
if
语句)。否则,您的查询可能有问题(从同名对象中选择列似乎不正确)
cmd.CommandText=“插入Plist(Pid、passengername、flightid、Flightname、Fromstation、Tostation、category、DateandTimeings)值(“+Autonumber()+”、“+TextBox1.Text+”、“+DropDownList1.Text+”、“+DropDownList2.Text+”、“+DropDownList3.Text+”、“+DropDownList4.Text+”、“+DropDownList5.Text+”、“+DropDownList6.Text+”)"; int i=cmd.ExecuteNonQuery();错误消息:System.Data.SqlClient.SqlException:当identity_insert设置为OFF时,无法在表“Plist”中为identity列插入显式值。这意味着您无法在identity列中插入显式值。您的insert语句可能是错误的。
int retVal = default( int );
if( dt.Rows.Count == 1 )
{
retVal = (int)dt.Rows[0][columnName];
}
return retVal;