Я знаю, это не рекомендуется. Возможный риск SQL-инъекции.Передача запроса в качестве параметра
В моем настоящем приложении я создал класс, содержащий многоразовые функции. Одна из таких функций такова:
public static Int32 InsertNewRecord(string myQuery)
{
ModCon.OpenConnection();
MySqlCommand cmdInsert = new MySqlCommand(myQuery, ModCon.myCN);
try
{
Int32 RecordsAffected = cmdInsert.ExecuteNonQuery();
return RecordsAffected;
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString(), "Error:", MessageBoxButtons.OK, MessageBoxIcon.Error);
return 0;
}
finally
{
cmdInsert.Dispose();
ModCon.CloseConnection();
}
}
Этот класс имеет много таких методов, которые могут быть использованы повторно. Существует метод заполнения DataGridView, где я передаю имя DataGridView и SQL-запрос, чтобы заполнить его.
Мое приложение в настоящее время является автономным приложением Windows. Что может быть профессиональным способом достичь этого без страха перед SQL Injection?
Методы, приведенные выше, относятся к классу и всякий раз, когда мне нужны эти методы, я создаю экземпляр этого класса в другом классе.
Действительно ли передано в 'myQuery' то, что было передано через строку запроса? – Oded
Да точно. Но помните, что в настоящее время это не веб-приложение. – RKh