Я создаю сборку в C # для MS SQL 2005. Эта сборка создает хранимую процедуру и выполняет динамический запрос на основе параметров, переданных в хранимую процедуру.
Есть ли в C # простая функция для предотвращения внедрения SQL?
Например
string myQuery = "SELECT * FROM dbo.MyTable WHERE lastName = '" + injectionCheck(arg1) + "'";
На этот вопрос был дан ответ для стандартного запроса ... но в ситуациях, когда нет способа создать действительно динамический запрос, что я могу использовать в C # для проверки внедрения?
Например, они, вероятно, не будут работать:
с использованием @dbName;
SELECT * FROM @ table
ОТКРЫТЫЙ СИММЕТРИЧНЫЙ КЛЮЧ @ keyName
и т.д.