![](/img/trans.png)
[英]Issue with HttpClient.PostAsJsonAsync Not Working from ASPX
[英]How to bind JSON response from httpClient.PostAsJsonAsync
我可以httpClient.PostAsJsonAsync(路徑,內容)罰款。
但是,這篇文章返回了一些帶有響應細節的JSON,例如:{“StatusCode”:200,“AccessCode”:“92BEEB285ZB47DA”,“InternalMessage”:null}
我需要訪問AccessCode。
如何干凈有效地完成這項工作? 我可以創建這樣的對象:
public class GIResponse
{
public string StatusCode { get; set; }
public string AccessCode { get; set; }
public string InternalMessage { get; set; }
}
並將其映射到結果?
或者我將如何遍歷JSON並拔出AccessCode?
我搜索得非常廣泛,但令人驚訝的是我在Google上找不到任何東西 - 也許這是因為這是Post的結果,而不是Get。
我怎樣才能做到這一點?
如果使用httpResponse.Content.ReadAsStringAsync
獲取responseText
,則可以使用Json.NET的JObject
並將其定義為動態:
dynamic j = JObject.Parse(@"{""StatusCode"":200,""AccessCode"":""92BEEB285ZB47DA"",""InternalMessage"":null}");
Console.WriteLine(j.AccessCode);
你也可以使用JsonConvert
:
var result = JsonConvert.Deserialize<MyModel>(resposeText);
顯然,如果您已經有一個模型,則不要將其作為字符串讀取,您只需將其作為模型閱讀:
var result = httpResponse.Content.ReadAsAsync<MyModel>();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.