با عرض سلام
من یک سبد خرید در asp.net طراحی کردم که با انتخاب کالا، کالا به سبد خرید اضافه می شود . در یک ستون از repeater سبد خرید ، یک dropdownlist قرار داده ام که کاربر ، تعداد کالای مورد نظر را انتخاب کند . مشکل من این است که می خواهم با تغییر تعداد کالا ، قیمت کل تغییر کند . این کد من است :
protected void btnAddBasket_Click(object sender, EventArgs e) { string id = ((Button)sender).CommandArgument; MasterDCDataContext db = new MasterDCDataContext(); var q = db.Products.Where(c => c.PrID == int.Parse(id)).Single(); PrTitle = q.PrName; prType = q.PrType; PrFactory = q.PrCompany; PrImage = q.PrImage; PrPrice = q.PrPrice; if (Session["basket"] == null) { DataTable dt = new DataTable(); dt.Columns.Add("PrID"); dt.Columns.Add("PrImage"); dt.Columns.Add("PrTitle"); dt.Columns.Add("PrPrice"); dt.Columns.Add("PrTotalPrice"); dt.Columns.Add("PrCompany"); dt.Columns.Add("PrType"); DataRow dr = dt.Rows.Add(); dr["PrID"] = Request.QueryString["PrID"]; dr["PrImage"] = PrImage; dr["PrTitle"] = PrTitle; dr["PrPrice"] = PrPrice; dr["PrTotalPrice"] = PrPrice * PrCount; dr["PrCompany"] = PrFactory; dr["PrType"] = prType; Session["basket"] = dt; int tpCount = 0; for (int i = 0; i < dt.Rows.Count; i++) { tpCount += Convert.ToInt32(dr["PrPrice"]); } lblTotalPrice.Text = tpCount.ToString(); } else { DataTable dt = (DataTable)Session["basket"]; DataRow dr = dt.Rows.Add(); dr["PrID"] = Request.QueryString["PrID"]; dr["PrImage"] = PrImage; dr["PrTitle"] = PrTitle; dr["PrPrice"] = PrPrice; dr["PrTotalPrice"] = PrPrice * PrCount; dr["PrCompany"] = PrFactory; dr["PrType"] = prType; //dt.Rows.Add(dr); Session["basket"] = dt; int tpCount = 0; for (int i = 0; i < dt.Rows.Count; i++) { tpCount += Convert.ToInt32(dr["PrPrice"]); } lblTotalPrice.Text = tpCount.ToString(); } } protected void ddlCount_dataBound(object sender,EventArgs e) { DropDownList ddl = (DropDownList)(sender); for(int i = 1;i < 10 ; i++) { ddl.Items.Add(new ListItem(i.ToString(), i.ToString())); } PrCount = Convert.ToInt32(ddl.SelectedIndex); }
اما با تغییر تعداد کالا توسط dropdownlist با خطای زیر مواجه می شوم :
آیا لازم است در جدول پایگاه داده ، ستون PrTotalPrice اضافه شود ، آیا راهی است که بدون افزودن ستون در جدول پایگاه داده ، مشکل من برطرف شود و قیمت کل نمایش داده شود
با تشکر
این مشکل مربوط یه کدهاتون هست و نیازی به ستون اضافه در بانک نیست
باید کد رو Trace کنید تا مشکل پیدا بشه
خط به خط اجرا کنید
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)