Сведения об исключении: system.data.sqlclient.sqlexception: неверный синтаксис рядом с '='.
Здравствуйте, я получаю сообщение об ошибке при публикации моего кода. Пожалуйста, помогите мне определить, в чем может быть проблема. Спасибо
using System; using System.Data.SqlClient; using System.Data; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class Cart : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { List<string> SKUS = Convert.ToString(Session["DataTable"]).Split(',').ToList<string>(); Session["ItemsInCart"] = SKUS.Count; var MultiSelect = new SqlCommand(); string cmdString1; cmdString1 = "Select Manufacture, SKU, Name, Price From Product WHERE SKU = " + Session["CartTable"]; var connection = new SqlConnection("Data Source=Omisbi3.niunt.niu.edu;Initial Catalog=675_z1626585;User ID=OMIS675FA;Password=Omis.675!"); SqlDataReader sdr; Decimal Total = 0; //Creating the table var DT = new DataTable("CartDisplay"); var column1 = new DataColumn("SKU"); column1.DataType = System.Type.GetType("System.Int32"); var column2 = new DataColumn("Manufacture"); column2.DataType = System.Type.GetType("System.String"); var column3 = new DataColumn("Name"); column3.DataType = System.Type.GetType("System.String"); var column4 = new DataColumn("Price"); column4.DataType = System.Type.GetType("System.Decimal"); DT.Columns.Add(column1); DT.Columns.Add(column2); DT.Columns.Add(column3); DT.Columns.Add(column4); for (int i = 0; i <= SKUS.Count - 1; i++) { MultiSelect.CommandText = "Select SKU, Manufacture, Name, Price From Products WHERE SKU =" + SKUS[i]; MultiSelect.Connection = connection; MultiSelect.Connection.Open(); sdr = MultiSelect.ExecuteReader(); while (sdr.Read()) { DataRow Row1; Row1 = DT.NewRow(); Total = Total + sdr.GetDecimal(3); Row1["SKU"] = sdr.GetInt32(0); Row1["Manufacture"] = sdr.GetString(1); Row1["Name"] = sdr.GetString(2); Row1["Price"] = sdr.GetDecimal(3); DT.Rows.Add(Row1); } MultiSelect.Connection.Close(); lblResults.Text = "Your total is $" + Total; } GridView1.DataSource = DT; GridView1.DataBind(); } }
Что я уже пробовал:
Я попытался устранить эту ошибку, посмотрев, нужно ли мне добавить пробел в код.
PIEBALDconsult
Это, вероятно, здесь: где SKU =" + SKUS[i];
Что является большой причиной для использования параметризованного оператора вместо использования конкатенации строк.
Member 13576953
Я новичок в программировании. Как я могу это исправить?