Опросить базу данных от веб-страницы? - ASP.NET

Вот то, что я пытаюсь сделать. У меня есть веб-сайт, который позволяет пользователям отправить запросы, которые стоятся в очереди в таблице Jobs, которую сервис берет и обрабатывает. У меня есть столбец состояния в таблице, которая обозначает, стоится ли запрос в очереди для того, чтобы обработать или быть currenty, обработанным сервисом, или сервис завершил обработку запроса. Весь процесс занимает несколько минут.

У меня есть страница Status ASP.NET, на которой я должен буду показать текущий статус их запроса на оперативной основе. Я хочу отобразить некоторую анимацию и обозначить текущий статус. Одним путем я мог сделать, это должно иметь meta http, обновляются каждый x секунды, который проверяет состояние запроса (я предполагаю, что это - то, как сайты, такие как Expedia, Priceline делает это?)

Я хотел бы предотвратить полное обновление страницы, возможно и ищет решение для Ajax/jQuery. Как я реализовал бы это? Действительно ли опрос является корректным подходом?

5
задан Nick 6 January 2010 в 23:22
поделиться

4 ответа

Опрос через AJAX - самый простой и легкий для ваших нужд. Если вы знаете верхнюю и нижнюю границы по времени, то, вероятно, я бы просто запустить анимацию в течение этого времени, а затем сделать что-то для исключительного случая.

Другие сделали то же самое:

Смотри: http://news.ycombinator.com/item?id=946165 and http://www.chrisharrison.net/projects/progressbars/ProgBarHarrison.pdf

4
ответ дан 15 December 2019 в 01:03
поделиться

Вы изучали асинхронные вызовы сервера? Это позволит вам отправить вызов на сервер и не ждать результата, когда вызов завершится, будет запущено событие, и будет запущен метод на странице клиента, это звучит как то, что вам нужно, и у вас не будет для проведения опроса дополнительная информация:

http://msdn.microsoft.com/en-us/magazine/cc163725.aspx

Надеюсь, это поможет.

0
ответ дан 15 December 2019 в 01:03
поделиться

Возможно, вы захотите взглянуть на "длинный опрос", также известный как Комета.

Идея в том, что вы делаете асинхронный Ajax запрос от клиента. На стороне сервера вы подвешиваете запрос до тех пор, пока не изменится какое-либо состояние (так, чтобы у него было что-то новое, о чем можно было бы сообщить). Затем вы освобождаете запрос, и он возвращает обновленную информацию.

Это имеет преимущество перед чистым опросом в том, что запросы возвращаются только тогда, когда что-то изменилось. Он также может показаться более отзывчивым, так как в значительной степени зависит от стороны сервера.

0
ответ дан 15 December 2019 в 01:03
поделиться

Опрос, вероятно, лучший подход, если вы не хотите, чтобы веб-страница постоянно работала на сервере ...

Однако, если вас это не беспокоит, тогда вы можете взглянуть на [ аналогичный ответ ] Я задал другой вопрос, который позволяет вам динамически обновлять страницу ... Браузер будет продолжать «загружать» страницу до ее завершения.

0
ответ дан 15 December 2019 в 01:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: