Асинхронный вызов веб-службы ASMX

1

В моем сценарии, когда пользователь меняет некоторые поля в программе и делает SAVE, webserivce запрос webserivce для сохранения некоторой информации о регистрации в базе данных. Я сделал поиск на веб-сайте и нашел это решение для вызовов Async:

 ThreadPool.QueueUserWorkItem(delegate
 {
    // Create an instance of my webservice object.
    // call its Log webmethod.
 });

Но поскольку у меня нет большого опыта работы с webservices и вызовами Async поэтому я хотел показать вам сценарий, который у меня есть, и то, как я обрабатываю его, чтобы получить ваше мнение об этом, и если это правильный способ сделать это. Спасибо за предложения.

Теги:
asynchronous
asmx

1 ответ

2
Лучший ответ

Можете ли вы потерпеть неудачу в работе по регистрации? Только тогда вы должны начать "фоновую работу" в приложении ASP.NET.

QueueUserWorkItem будет работать. Более современная версия - Task.Run. Удостоверьтесь, что вы уловили ошибки, возникающие в потоке потока. Если нет, вы никогда не узнаете о багах и не потеряете работу.

Если вы ожидаете большой объем таких вызовов или ожидаете, что они займут много времени, рассмотрите возможность использования async IO. Он не использует нить в процессе (даже фоновый поток).

  • 0
    Спасибо за предложения.
  • 0
    потому что я на .NET 4.i он не показывает мне Task.Run? Но интеллигенция действительно показывает мне Task.Factory.StartNew (). Это тоже хорошо?
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню