我正在制作一个简单的购物车。将产品添加到购物车页面的按钮位于另一个页面,我的添加到购物车按钮如下
protected void addCart_Click(object sender, EventArgs e)
{
if (Session["mySC"] == null)
{
mySC = new CartClass();
Session["mySC"] = mySC;
}
string ID = Request.QueryString["ID"];
mySC = (CartClass)Session["mySC"];
DataTable dt = DA.selectQuery("Select * from Trees where ID='"+ID+"'");
DataRow row = dt.Rows[0];
mySC.insert(new cartItems(Int32.Parse(ID),
row["TreeName"].ToString(),
row["Image"].ToString(),
Double.Parse(row["PricePerCube"].ToString()), 1));
}
}
单击此按钮时会弹出以下错误
System.IndexOutOfRangeException
中出现System.Data.dll
类型的例外但未在用户代码中处理
附加信息:位置0没有行。
任何帮助将不胜感激
答案 0 :(得分:0)
DataRow row = dt.Rows[0];
如果没有返回行,将抛出异常。在它之前添加if条件
If (dt.Rows.Count > 0){
DataRow row = dt.Rows[0];
mySC.insert(new cartItems(Int32.Parse(ID),
row["TreeName"].ToString(),
row["Image"].ToString(),
Double.Parse(row["PricePerCube"].ToString()), 1));
}