Ответ основан на моем предположении, что вы ожидаете изменения оператора запроса (строки).Это предположение основано на вашей формулировке, а также на последнем предложении в выражении вашего кода.
Console.WriteLine (command.CommandText);
Текст запроса неизменено, т.е.параметры в тексте запроса не заменяются назначенными значениями параметров.Параметры и их значения отправляются с текстом запроса в СУБД для выполнения.В Sql Server вы можете увидеть это, если вам нужно профилировать экземпляр Sql Server с помощью Profiler.
В качестве примечания, я не рекомендую вам использовать AddWithValue
.См. Также Можем ли мы прекратить использовать AddWithValue () уже? .Вместо этого просто используйте Add
.Также вы должны давать осмысленные имена вашим параметрам, например, "@errorLevel", когда это возможно, это облегчает отладку.
command.Parameters.Add("@errorLevel", SqlDbType.Int).Value = errorLevel;
Нет необходимости добавлять префиксы к именам параметров с помощью "@"вызов Add
, как это будет сделано методом, если вы этого не сделали.Это считается хорошей практикой, но это вопрос мнения.