Я пытаюсь следовать примеру на MSDN.com для контроллеров Async. У меня есть несколько вопросов. Вот ссылка на запись:
http://msdn.microsoft.com/en-us/library/ee728598%28VS.100%29.aspx
А вот код, на который я ссылаюсь:
public class PortalController : AsyncController {
public void NewsAsync(string city) {
AsyncManager.OutstandingOperations.Increment();
NewsService newsService = new NewsService();
newsService.GetHeadlinesCompleted += (sender, e) =>
{
AsyncManager.Parameters["headlines"] = e.Value;
AsyncManager.OutstandingOperations.Decrement();
};
newsService.GetHeadlinesAsync(city);
}
public ActionResult NewsCompleted(string[] headlines) {
return View("News", new ViewStringModel
{
NewsHeadlines = headlines
});
}
}
Мой первый вопрос таков: должен ли я иметь несколько методов в своем сервисе? Например, я взял свой метод с именем abc в контроллере и создал из него два новых метода с именами abcAsync и abcCompleted. Должен ли я сделать что-то подобное в моем сервисе? Это выглядит так в соответствии с примером, но пример MSDN ничего не говорит об изменении моего сервиса.
Следующий вопрос, как выглядит этот синтаксис, если мой сервис принимает несколько параметров?
Спасибо за помощь.