Есть ли способ уловить все исключения SQL в проекте? У меня есть несколько gridviews и несколько sqldatasources, и большинство ошибок происходят, когда пользователь вводит что-то неправильно или в неправильном столбце. Итак, как я могу остановить страницу «Ошибка сервера/Проект»?Ловля SQL-исключений в vb.net
ответ
Простой ответ заключается в проверке ввода перед отправкой его на сервер SQL Server. Таким образом, исключений не будет.
Если вы хотите централизованно обрабатывать все свои ошибки (что не является идеальным решением для этой конкретной проблемы), вы можете настроить собственную обработку ошибок в файле web.config.
Это имеет смысл, но как я могу проверить и проверить, действительно ли введенные пользователем данные действительны? – Shawn
Знайте, что является действительным и проверяйте введенные данные пользователя перед передачей его на SQL Server. – Russ
Должен быть способ избежать жесткого программирования правильных параметров для каждой ячейки в 20 sqldatasources, которые у меня есть. – Shawn
Я бы предположил ошибку ловушки в событии Application_Error внутри вашего Global.asax в вашем веб-приложении.
Тем не менее, я должен согласиться с ответом Марка, вы должны проверить ввод перед вызовом SQL – Mikeware
Есть ли способ объединить это с ответом Marks, поэтому любые ошибки, которые я пропущу, пойманы этим? – Shawn
На самом деле, мое предложение будет ломать ошибки на странице и работать соответственно, но пользовательская обработка ошибок в web.config позволит вам только заменить страницу уродливых ошибок своей пользовательской (более удобной для пользователя) страницей ошибок. (Возможно, вы можете добавить в него некоторый код, но я не уверен, что вы можете иметь дело с исключениями на этой странице) – Mikeware
Самый простой способ поймать все исключения - это сделать это в обработчике событий Application_error в global.asax и использовать специальную обработку ошибок web.config, чтобы показать дружественную страницу ошибок. Это уже упоминалось в материалах.
Если вы хотите разместить всю свою логику проверки в одном месте или отделить их от ваших страниц aspx, вы можете сделать это, сделав свой сайт многоуровневым и поместите свою собственную логику проверки в средний слой. Используя этот метод, ваши данные будут проверяться на этом уровне независимо от того, какая страница будет обращаться к вашим данным. Вы также можете использовать objectdatasource для выполнения операции select/insert/update/delete. Очевидно, что это требует некоторой работы, но она может четко разделять ваши данные и ваш пользовательский интерфейс.
- 1. Ловля определяемых пользователем исключений Oracle в VB.NET
- 2. Ловля событий сбоя приложений
- 3. Ловля ошибок в Node.js
- 4. Ловля NSException в Swift
- 5. Ловля исключение в коде
- 6. Ловля данных в контроллере
- 7. Ловля утверждений в NUnit
- 8. Ловля ошибок в Рубине
- 9. Ловля SIGTERM в C
- 10. Ловля исключений в WebApp?
- 11. Ловля исключения в clone_saved_path()
- 12. Ловля перетаскивания в Qt?
- 13. Ловля CustomErrors в ASP.NET
- 14. Ловля ошибок в Powershell
- 15. Ловля ошибок в Global.asax
- 16. Ловля исключения в конструкторе
- 17. Ловля исключения в java?
- 18. Ловля исключений в деструкторах
- 19. Ловля EJBTransactionRolledbackException
- 20. Ловля ArrayIndexOutOfBoundsExc
- 21. Ловля JSONException
- 22. Ловля sys.exit
- 23. Ловля IllegalArgumentException?
- 24. Ловля исключения в .NET Thread
- 25. Ловля исключений в OO PHP
- 26. Ловля Исключения в лямбда-выражения
- 27. Ловля ошибок в MySQLdb Библиотека
- 28. Ловля Заблудшие Ответы В WCF
- 29. Ловля частичного закрытия в angularJS
- 30. Ловля ошибок в ES6 обещания
Используете ли вы ASP.Net? – SLaks
vb.net специально. – Shawn