public async Task <EditHistoryForm> GetDetails(string id)
        {
            History         ModelGlobal = default(History);
            EditHistoryForm ModelLocal  = default(EditHistoryForm);

            using (var client = new HttpClient())
            {
                client.BaseAddress = new Uri(Baseurl);
                client.DefaultRequestHeaders.Clear();
                client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                HttpResponseMessage Res = await client.GetAsync($"History/Get/{id}");

                if (Res.IsSuccessStatusCode)
                {
                    var EmpResponse = Res.Content.ReadAsStringAsync().Result;
                    ModelGlobal = JsonConvert.DeserializeObject <History>(EmpResponse);
                    ModelLocal  = AutoMapper <History, EditHistoryForm> .AutoMap(ModelGlobal);
                }
            }
            return(ModelLocal);
        }
    public async Task <ActionResult> Edit(int id, [Bind] EditHistoryForm formulaire)
    {
        if (ModelState.IsValid)
        {
            History history = new History
            {
                IdHistory = id,
                IdCar     = Convert.ToInt32(formulaire.CarName),
                IdSeller  = Convert.ToInt32(formulaire.SellerName),
                IdBuyer   = Convert.ToInt32(formulaire.BuyerName),
                BuyPrice  = formulaire.BuyPrice,
                SoldPrice = formulaire.SoldPrice,
                BuyBill   = formulaire.BuyBill,
                SoldBill  = formulaire.SoldBill,
                BuyDate   = formulaire.BuyDate,
                SoldDate  = formulaire.SoldDate
            };

            using (var client = new HttpClient())
            {
                client.BaseAddress = new Uri(Baseurl);
                client.DefaultRequestHeaders.Clear();

                StringContent content = new StringContent(JsonConvert.SerializeObject(history));
                content.Headers.ContentType = new MediaTypeHeaderValue("application/json");

                HttpResponseMessage Res = await client.PutAsync($"History/Update", content);

                if (!Res.IsSuccessStatusCode) /*error handling*/ } {
        }

        return(RedirectToAction("Index"));
    }
    else
    {
        return(View());
    }
}
    // GET: History/Edit/5
    public async Task <ActionResult> Edit(string id)
    {
        List <Car>            carList        = null;
        List <SelectListItem> getcarformList = new List <SelectListItem>();

        using (var client = new HttpClient())
        {
            client.BaseAddress = new Uri(Baseurl);
            client.DefaultRequestHeaders.Clear();
            client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
            HttpResponseMessage Res = await client.GetAsync("Car/Get");

            if (Res.IsSuccessStatusCode)
            {
                var EmpResponse = Res.Content.ReadAsStringAsync().Result;
                carList = JsonConvert.DeserializeObject <List <Car> >(EmpResponse);
            }
        }

        foreach (Car Car in carList)
        {
            getcarformList.Add(new SelectListItem {
                    Text = Car.ChassisNumber, Value = Car.IdCar.ToString()
                }
                               );
        }

        List <Seller>         sellerList        = null;
        List <SelectListItem> getsellerformList = new List <SelectListItem>();

        using (var client = new HttpClient())
        {
            client.BaseAddress = new Uri(Baseurl);
            client.DefaultRequestHeaders.Clear();
            client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
            HttpResponseMessage Res = await client.GetAsync("Seller/Get");

            if (Res.IsSuccessStatusCode)
            {
                var EmpResponse = Res.Content.ReadAsStringAsync().Result;
                sellerList = JsonConvert.DeserializeObject <List <Seller> >(EmpResponse);
            }

            foreach (Seller Seller in sellerList)
            {
                getsellerformList.Add(new SelectListItem {
                        Text = Seller.Name, Value = Seller.IdSeller.ToString()
                    });
            }
        }

        List <Buyer>          buyerList        = null;
        List <SelectListItem> getbuyerformList = new List <SelectListItem>();

        using (var client = new HttpClient())
        {
            client.BaseAddress = new Uri(Baseurl);
            client.DefaultRequestHeaders.Clear();
            client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
            HttpResponseMessage Res = await client.GetAsync("Buyer/Get");

            if (Res.IsSuccessStatusCode)
            {
                var EmpResponse = Res.Content.ReadAsStringAsync().Result;
                buyerList = JsonConvert.DeserializeObject <List <Buyer> >(EmpResponse);
            }

            foreach (Buyer Buyer in buyerList)
            {
                getbuyerformList.Add(new SelectListItem {
                        Text = Buyer.FirstName + " " + Buyer.LastName, Value = Buyer.IdBuyer.ToString()
                    });
            }
        }

        EditHistoryForm model = new EditHistoryForm();

        model = await GetDetails(id);

        model.CarList    = getcarformList;
        model.SellerList = getsellerformList;
        model.BuyerList  = getbuyerformList;

        return(View(model));
    }