c# - Xamarin/C# POST 到 RESTful api
问题描述
如果这是一个愚蠢的问题,我深表歉意,我已经被投入到一个对 C#/Xamarin 知识很少的项目中,并且一段时间以来我一直在用头撞墙。
所以...
我正在尝试对 SagePay API 进行后期调用(https://test.sagepay.com/documentation/#card-identifiers)
我一直在访问我们的 API,并且我已经很好地访问了其他 SagePay API,
我遇到的问题是这个调用是一个“嵌套”json(为不正确的术语道歉)
如何以这种格式提交 POST
{
"cardDetails":
{
"cardholderName": "SAM JONES",
"cardNumber": "4929000000006",
"expiryDate": "0320",
"securityCode": "123"
}
}
解决方案
您在该链接(json2csharp)中创建了您的对象:
public class CardDetails
{
public string cardholderName { get; set; }
public string cardNumber { get; set; }
public string expiryDate { get; set; }
public string securityCode { get; set; }
}
public class RootObject
{
public CardDetails cardDetails { get; set; }
}
序列化(JSON.Net):
var cardIdentifier = new RootObject{
cardDetails = new CardDetails{
cardholderName = "EdSF",
cardNumber = "4111111111111111",
expiryDate = "0320",
securityCode = "123"
}
};
Console.WriteLine(JsonConvert.SerializeObject(cardIdentifier));
结果:
{
"cardDetails": {
"cardholderName": "EdSF",
"cardNumber": "4111111111111111",
"expiryDate": "0320",
"securityCode": "123"
}
}
嗯……