Tiếp tục nhận từ nội dung:
var httpClient = new HttpClient();
var response = httpClient.PostAsJsonAsync(posturi, model).Result;
bool returnValue = response.Content.ReadAsAsync<bool>().Result;
Nhưng, điều này thực sự là cách tiếp cận ngây thơ cho cách nhanh chóng để có được kết quả. PostAsJsonAsync
và ReadAsAsync
không được thiết kế để làm như thế này, chúng được thiết kế để hỗ trợ async await
lập trình, do đó, mã của bạn nên là:
var httpClient = new HttpClient();
var response = await httpClient.PostAsJsonAsync(posturi, model);
bool returnValue = await response.Content.ReadAsAsync<bool>();
Ngoài ra, thay vì sử dụng một lá cờ để kiểm tra xem một đối tượng được lưu hay không, bạn nên sử dụng mã HTTP bằng cách trả lại 200 OK
để xác định rằng lưu thành công.
Nguồn
2013-03-04 15:50:22
Sử dụng trình gỡ lỗi để khám phá đối tượng phản hồi. Cũng có được Fiddler để xem những gì đang được đăng và nhận được. Cũng sử dụng await - thay vì .Response nếu bạn muốn sử dụng nó theo cách Async. – niico