У меня проблема с подключением ADO-DB к SQL Server в приложении ADO.Net. Я открываю соединение в веб-службе, когда он запускается и закрывает его, когда он заканчивается. Запуск соединения открыт до тех пор, пока выполняется сервис. Я передаю соединение с dll COM, который фактически обрабатывает транзакции. Теперь я столкнулся с одной проблемой: команда выполняет исключение throws через некоторое время, хотя тот же самый запуск работал раньше. Но состояние соединения показывает только Open. Итак, мы должны закрыть соединение и открыть его и повторить транзакцию. Таким образом, он работает. Но я хочу знать, почему корень вызывает фактическое решение для этого. Еще одна вещь. У нас сейчас только один клиент.Удержание подключения ADODB на некоторое время
0
A
ответ
0
Сохранение связи, открытое на весь срок службы приложения, является плохой практикой. Соединение может быть тайм-аутом, могут возникнуть некоторые проблемы с сетью и т. Д. Соединение просто может выйти из строя, и нет способа избежать этого - вы должны поймать исключение и каким-то образом обработать его. Кроме того, это не позволяет обрабатывать несколько запросов одновременно, потому что у вас не может быть двух одновременных транзакций в одном соединении.
Правильный способ создания нового соединения для каждого запроса веб-службы. .NET по умолчанию использует пул соединений, поэтому влияние производительности очень мало.
Смежные вопросы
- 1. Проблема подключения ADODB
- 2. Активность на некоторое время?
- 3. Состояние подключения к соединению ADODB
- 4. Миграция подключения ADODB к .NET
- 5. addClass() только на некоторое время
- 6. Скрыть div на некоторое время
- 7. Запретить роботы на некоторое время
- 8. Отключить UIControl на некоторое время
- 9. Удержание пользователя во время сеанса
- 10. mssql_connect перестает работать через некоторое время
- 11. Неполный набор записей из подключения ADODB
- 12. Вызов строки/объекта для подключения adodb
- 13. соединения закрываются через некоторое время
- 14. Сессия Некоторое время reurn Null И некоторое время reurn value
- 15. WebLogic работает некоторое время
- 16. Loop с некоторое время
- 17. java.lang.NoClassDefFoundError через некоторое время
- 18. Некоторое время вызывается страница asp.net и некоторое время не
- 19. Каковы наилучшие методы запуска запросов на удержание?
- 20. Положите конверт на удержание
- 21. file_put_contents через некоторое время
- 22. pushViewController занимает некоторое время
- 23. Уведомление через некоторое время
- 24. JsonResult усекается Некоторое время
- 25. Удержание участника во время конференции в Twilio
- 26. время удержание и обмен в PHP
- 27. Android - Удержание активности во время анимации
- 28. Отключить сборку мусора node.js на некоторое время
- 29. Остановить возможность нажимать кнопку на некоторое время
- 30. Закрытие приложения для Android на некоторое время
У вас есть исключение? Что вы понимаете, открывая соединение при запуске службы? Вы имеете в виду открытие соединения по запросу или только один раз на весь срок службы приложения? Что делает COM-компонент с соединением? Улучшите свой вопрос, потому что вы пропустили очень важные детали. –
Из C++ (COM dll) исключение - это просто E_FAIL.Когда я тестировал одно и то же в .Net, исключение - «Ошибка соединения». Я открываю соединение при запуске моего веб-сервиса (только на весь срок службы приложения) Компонент .COM - это тот, который фактически выполняет все транзакции. Объект соединения передается COM-компоненту. – Sana