Вызов WEB API сервисов в контроллерах ASP.net mvc
Нужен хороший пример использования WEB API сервисов на back-end ASP.net mvc. Много вопросов возникает при вызове сервисов в контроллерах. Нужно писать обертку для каждого сервиса WEB API? например, сервис
GET api/User/GetUserLogin?Username={Username}&Pwd={Pwd}&ClientID=ClientID}&DivisionID={DivisionID}
И обертка для него:
public User Login(string name, string password, int divisionId)
{
using (var client = new HttpClient())
{
client.BaseAddress = new Uri(ProjectConfiguration.ServiceUrl);
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
var url = string.Format("User/GetUserLogin?Username={0}&Pwd={1}&ClientID={2}&DivisionID={3}",name, password, ProjectConfiguration.ClientId, divisionId);
var response = client.GetAsync(url).Result;
return response.IsSuccessStatusCode ? JsonConvert.DeserializeObject<User>(response.Content.ReadAsStringAsync().Result) : new User();
}
}
Еще вопрос: как обрабатывать в контроллерах ошибки HTTP?
Буду очень признателен за помощь.
Источник: Stack Overflow на русском