Я использую класс для проверки определенных слов в приложении для предотвращения внедрения SQL.Невозможно оценить выражение
В классе существует цикл for, который пытается сопоставить определенное слово со словами из черного списка. Если есть совпадение, я должен перенаправить на страницу ошибки системы.
Однако, когда совпадение найдено и я пытаюсь перенаправить, я продолжаю получать сообщение об ошибке «Невозможно оценить выражение».
Вот код:
Private Sub CheckInput(ByVal parameter As String)
Try
Dim errorPage As String = "error_page.aspx?Injection=" & parameter
For i As Integer = 0 To blackList.Length - 1
If (parameter.IndexOf(blackList(i), StringComparison.OrdinalIgnoreCase) >= 0) Then
'Handle the discovery of suspicious Sql characters here
'generic error page on your site
HttpContext.Current.Response.Redirect(errorPage)
End If
Next
Catch ex As Exception
Throw ex
End Try
После того, как блок Try перехватывает ошибку, она продолжает давать ошибку и не перенаправляет на страницу ошибки.
Любые идеи?
вы должны использовать подготовленные инструкции для sql injection.s –
«Невозможно оценить выражение» - это отладчик, а не ваш код. Вероятно, у вас есть часы на каком-то коде, который выходит за рамки. – vcsjones