Я считаю, что этот вопрос был задан несколько месяцев назад, но я считаю, что моя ситуация иная, и те же правила могут не применяться.
Каждый раз, когда я использую этот метод, выскакивает одна и та же ошибка. В позиции 0 нет строки. Если я изменю [0] на [1] или [15]; Нет строки в [1] и т. Д. Может ли это означать, что моя база данных даже не подключается? Должен ли я написать какой-то оператор if, чтобы определить, есть ли строки вообще?
public bool UpdateOrderToShipped(string order)
{
orderNumber = order;
string batch = ConfigurationManager.AppSettings["SuccessfulOrderBatch"];
string statement = "UPDATE SOP10100 SET BACHNUMB = '"+ batch +"' WHERE SOPNUMBE = @SOPNUMBE";
SqlCommand comm = new SqlCommand(statement, connectionPCI);
comm.Parameters.Add("SOPNUMBE", orderNumber);
try
{
comm.Connection.Open();
comm.ExecuteNonQuery();
comm.Connection.Close();
}
catch(Exception e)
{
comm.Connection.Close();
KaplanFTP.errorMsg = "Database error: " + e.Message;
}
statement = "SELECT SOPTYPE FROM SOP10100 WHERE SOPNUMBE = @SOPNUMBE";
comm.CommandText = statement;
SqlDataAdapter da = new SqlDataAdapter(comm);
DataTable dt = new DataTable();
da.Fill(dt);
soptype = dt.Rows[0]["SOPTYPE"].ToString(); //errror here
return true;
}