GrpSMK Ответов: 1

Как получить ответ от web api


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

Что я уже пробовал:

public class HomenewController : Controller
    {
        // GET: Homenew
        string url = "https://api.yourmembership.com/reference/2_25/Sa_Members_Groups_Add.htm ";


        public async Task<ActionResult> Index()
        {
            List<Employee> EmpInfo = new List<Employee>();

            using (var client = new HttpClient())
            {
            
                client.BaseAddress = new Uri(url);

                client.DefaultRequestHeaders.Clear();
               
                client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

               
                HttpResponseMessage Res = await client.GetAsync(url);

          
                if (Res.IsSuccessStatusCode)
                {
             
                    var EmpResponse = Res.Content.ReadAsStringAsync().Result;

                  
                    EmpInfo = JsonConvert.DeserializeObject<List<Employee>>(EmpResponse);

                }
           
                return View(EmpInfo);
            }
        }
   
    }
}


Модель для ссылки api
public class Employee
  {
      public String ID { get; set; }
      public String GroupCode { get; set; }

      public Boolean AddAsMember { get; set; }
      public Boolean IsPrimaryGroup { get; set; }

      public Boolean AddAsGroupAdmin { get; set; }

      public String AddGroupRepTitle { get; set; }

  }

1 Ответов

Рейтинг:
2

Divya-Systematix

Сначала вы проверяете, какие свойства вы передаете из контроллера api?

И вы можете попробовать этот тип кода в API controller:

/// <summary>
/// This method for Get All employee .
/// </summary>
[HttpGet]
[Route("GetEmployee")]
public HttpResponseMessage GetEmployee()
{
    try
    {
        ////get employee.
        var employeeCollection = employeeService.GetEmployee().ToList();
        ////check object
        if (employeeCollection.Count > 0 && employeeCollection != null)
        {
            ////dynamic list.
            dynamic employees = new List<ExpandoObject>();
            ////bind dynamic property.

            ////return response from employee service.
            foreach (var employeeDetail in employeeCollection)
            {
                ////bind dynamic property.
                dynamic employee = new ExpandoObject();

                ////map ids
                employee.ID = employeeDetail.ID;
                employee.GroupCode = employeeDetail.GroupCode;
                employee.AddAsMember = employeeDetail.AddAsMember;
                employee.IsPrimaryGroup = employeeDetail.IsPrimaryGroup;
                employee.AddAsGroupAdmin = employeeDetail.AddAsGroupAdmin;
                employee.AddGroupRepTitle = employeeDetail.AddGroupRepTitle;
                ////set customers values in list.
                employees.Add(employee);
                ////return customers service
                return this.Request.CreateResponse<List<ExpandoObject>>(HttpStatusCode.OK, (List<ExpandoObject>)employees);

            }
        }
        else
        {
            ////case of record not found.
            return this.Request.CreateResponse(HttpStatusCode.NotFound);
        }


    }
    catch (Exception ex)
    {
        //// handel exception log.
        Console.Write(ex.Message);

        ////return case of exception.
        return this.Request.CreateResponse(HttpStatusCode.InternalServerError, new { Message = "Exception : " + ex.Message });
    }
}



hope it's useful for you...


GrpSMK

спасибо,это ссылка на веб-api YMSDK. нужен ли контроллер веб-api? для этого

GrpSMK

https://api.yourmembership.com/reference/2_25/Sa_Members_Groups_Add.htm проверьте эту ссылку и посмотрите xml-запрос и ответ, мне нужен ответ в качестве вывода в моем приложении mvc.