Я хочу написать асинхронное действие в ASP.NET MVC 2, которое ожидает до 5 секунд, пока не произойдет событие. Если событие происходит, сервер отвечает с результатом, в противном случае запрос истекает.
Каков наилучший способ достичь этого?
Используйте атрибут [AsyncTimeout] . Если асинхронное действие не выполнено в течение указанного времени, будет выдано исключение TimeoutException. Вы можете использовать фильтр исключений (например, [HandleError]), чтобы отслеживать эти исключения и обрабатывать их соответствующим образом.
Вы можете взглянуть на асинхронные контроллеры .