Я немного читал об SQL-инъекции и хочу быть уверен, что мой код, скажем, «безопасен», я планировал использовать валидаторы RegExp для проверки ввода пользователя, но в другом посте здесь предлагалось использовать только параметризованные запросы. Я использую их, но хочу убедиться, что мой код безопасен, не так ли?
using ( SqlConnection dataConnection = new SqlConnection(myConnectionString) )
{
using ( SqlCommand dataCommand = dataConnection.CreateCommand() )
{
dataCommand.CommandText = "INSERT INTO Lines (Name, CreationTime) " +
"VALUES (@LineName, @CurrentDateTime)";
dataCommand.Parameters.AddWithValue("@LineName", TextBox2.Text);
dataCommand.Parameters.AddWithValue("@CurrentDateTime", DateTime.Now.ToString());
dataConnection.Open();
//do other DB stuff
Я выбираю последнюю часть, чтобы сделать сообщение короче, остальное просто пытается поймать исключения и закрыть соединение с БД, а также предоставить обратную связь с пользователем об успешной вставке.