0 c# asp.net-mvc json json.net
我试图将此响应转换为对象,以便我可以使用c#mvc应用程序中的对象访问它们.
以下是我做的代码:
var response = await client.GetAsync("ApiTest?Amount=" + Amount.ToString() + "&WalletAddress=" + WalletAddress.ToString() + "&TokenCode=" + TokenType.ToString());
if (response.IsSuccessStatusCode)
{
result = response.Content.ReadAsStringAsync().Result;
var test1 = Newtonsoft.Json.JsonConvert.DeserializeObject<dynamic>(result);
(Newtonsoft.Json.JsonConvert.DeserializeObject<dynamic>(result));
result = await response.Content.ReadAsStringAsync();
var obj =Newtonsoft.Json.JsonConvert.DeserializeObject(result);
return Json(new { Message = "Your Transaction Has Been Completed Successfully!" }, JsonRequestBehavior.AllowGet);
}
Run Code Online (Sandbox Code Playgroud)
以下是Json响应,但它是字符串格式:
{ "错误": "交易金额必须大于0", "结果":空, "IsSuccess":假"的HttpResponse":{ "头":[{ "关键": "X-框架-选项", "值": "SAMEORIGIN"]},{ "关键": "严,运输和安全", "值": "最大年龄= 31536000"]},{ "关键": "语法","价值":"无缓存"]},{"关键":"访问控制允许来源"'值’:'*’]},{'关键’:'保持活动’,"价值":["timeout = 5,max = 100"]},{"Key":"Connection","Value":["Keep-Alive"]},{"Key":"Cache-Control","Value" ":["no-store,must-revalidate,no-cache,post-check = 0,pre-check = 0"]},{"Key":"Date","Value":["Wed,2月28日2018 09:43:57 GMT"]},{"Key":"Set-Cookie","Value":["PHPSESSID = 3vbjmnpea9i9n871a8knc3s89q7lufpn; path = /; secure; HttpOnly","visid_incap_992349 = On7CIEXMQBq9AtX5/PvHQtp5lloAAAAAQUIPAAAAAACXLL2Z399YXaT6IXztsol +; expires =星期三,2019年2月27日14时49分04秒GMT;路径= /;域= .coinpayments.net " "incap_ses_478_992349 = pCsbJzCRvCFLbgPwODOiBtx5lloAAAAAR8gvl6uEmcAX0kCi3b/2Ig ==;路径= /;域= .coinpayments.net"]},{"键":"服务器" "值":[ "阿帕奇"]},{ "键": "X-Iinfo","瓦尔 UE ":[" 5-23697956-23698018 NNNN CT(1461 273 0)RT(1519811034346 506)Q(0 0 17 1)R(18 19)U6 "]},{"键":" X-CDN", "值":["Incapsula"]}],"ContentBody":"{\"error \":\"交易金额必须大于0 \","结果\":[]}","StatusCode" :200, "IsSuccessStatusCode":真"RequestUri": " https://www.coinpayments.net/api.php ", "RequestBody":"CMD = create_transaction\u0026amount = 0\u0026currency1 = USD\u0026currency2 = LTCT\u0026buyer_email = 3Pt5ebwZsMWV2ij1bnFv1yJYk2155PGzGx\u0026version = 1\u0026key = c84f65f198e77895f3edc08e7654379785f1057c7c0c6115bee69ed68371d558" }}
任何帮助将非常感谢>谢谢
您可以使用Visual Studio的Paste Special功能:
复制JSON和Paste Special:
您将获得以下课程:
public class JsonResponse
{
public string Error { get; set; }
public object Result { get; set; }
public bool IsSuccess { get; set; }
public Httpresponse HttpResponse { get; set; }
}
public class Httpresponse
{
public Header[] Headers { get; set; }
public string ContentBody { get; set; }
public int StatusCode { get; set; }
public bool IsSuccessStatusCode { get; set; }
public string RequestUri { get; set; }
public string RequestBody { get; set; }
}
public class Header
{
public string Key { get; set; }
public string[] Value { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
现在只需使用Newtonsoft反序列化:
var items = JsonConvert.DeserializeObject<JsonResponse>(json);
Run Code Online (Sandbox Code Playgroud)
输出:
| 归档时间: |
|
| 查看次数: |
1561 次 |
| 最近记录: |