У меня есть запрос, который вернет значение в этом случае и категорию инвентаря. Если пользователь вводит определенный номер поля, форма должна отключаться, если это что-то еще, что форма разрешает. Проблема в том, что я использую ExecuteScalar и мне нужно сравнить это значение со строкой «AP». Я новичок в C # и не могу понять, как это сделать. Вот мой код:
private void hide_apple_controls()
{
SqlCommand cmd = new SqlCommand();
Object invCat;
cmd.CommandText = "SELECT itm.inv_cat FROM " +
"t_item_master itm " +
"LEFT OUTER JOIN t_box box (NOLOCK) ON box.product_code LIKE itm.item_number " +
"where box.box_id = @box_id ";
cmd.Parameters.Add("@box_id", SqlDbType.VarChar).Value = boxBox.Text;
cmd.CommandType = CommandType.Text;
cmd.Connection = this.sqlConnection1;
this.sqlConnection1.Open();
SqlDataAdapter adpt = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
adpt.Fill(ds);
invCat = cmd.ExecuteScalar();
this.sqlConnection1.Close();
string ap = "AP";
if (invCat == ap )
{
disable_qc_form();
}
enable_qc_form();
}
1 ответ
В условии if вам понадобится предложение else.
if (invCat == ap )
disable_qc_form();
else
enable_qc_form();
Без else
ваша последняя строка будет выполняться несмотря ни на что. С else
он будет выполняться только в том случае, если invCat == ap
не имеет значения true.
Похожие вопросы
Новые вопросы
c#
C# (произносится как «see Sharp») — это высокоуровневый мультипарадигменный язык программирования со статической типизацией, разработанный Microsoft. Код C# обычно нацелен на семейство инструментов и сред выполнения Microsoft .NET, которое включает в себя .NET, .NET Framework, .NET MAUI и Xamarin среди прочих. Используйте этот тег для ответов на вопросы о коде, написанном на C#, или о формальной спецификации C#.