【发布时间】:2020-07-16 10:41:45
【问题描述】:
这是我想要的 JSON 格式
{ "ReferId": "9800",
"DestinationList":["250"],
"EmailAddress": "Test_Emails@gmail.com",
"ApplicantList":[
{
"FirstName":"Test",
"LastName":"Test",
"Dob":"01/01/1990",
"Gender":"M",
} ],
"CreditCard": {
"CardExpirationMonth": 1,
"CardExpirationYear": 2021,
"CardHolderAddress1": "123 Main",
"Transaction": {"Amount":106.56}
}
}
按照这个结构,我创建了模型。请找班级
public class Atlas_Purchase
{
public string ReferId { get; set; }
public List<string> DestinationList { get; set; }
public List<AtlasApplicantList> ApplicantList { get; set; }
private List<AtlasCreditCardDetails> CreditCards = new List<AtlasCreditCardDetails>();
public List<AtlasCreditCardDetails> CreditCard
{
get { return CreditCards; }
set { CreditCards = value; }
}
public class AtlasApplicantList
{
public string FirstName { get; set; }
public string LastName { get; set; }
public string Dob { get; set; }
public string Gender { get; set; }
}
public class AtlasCreditCardDetails
{
public string CardExpirationMonth { get; set; }
public string CardExpirationYear { get; set; }
public string CardHolderAddress1 { get; set; }
private List<AtlasTransaction> Transactions = new List<AtlasTransaction>();
public List<AtlasTransaction> Transaction
{
get { return Transactions; }
set { Transactions = value; }
}
}
但是当我序列化数据并且我以这种格式获取 JSON 时 JSON 结构不正确
我尝试了不同的方法来序列化数据,但仍然没有成功,请帮助解决这个问题。 提前致谢。
比斯瓦鲁普
【问题讨论】:
-
您已将“Credit”属性声明为 List
,因此反序列化的对象将是一个列表。不是吗?如果您将只有一个 Credit 属性,则必须将其定义为 AtlasCreditCardDetails 而不是 List 并且对于“Transction”对象也是如此 .... -
获取示例 JSON,编辑您的问题并将示例 JSON 添加到您的问题中。完成后,您的问题将更容易重现
-
请找到应用序列化后生成的json { "ReferId": "9800", "DestinationList":["250"], "EmailAddress": "Test_Emails@gmail.com", "ApplicantList":[ {"FirstName":"Test", "LastName":"Test", "Dob":"01/01/1990", "Gender":"M", } ], "CreditCard": [ { "CardExpirationMonth": 1, "CardExpirationYear": 2021, "CardHolderAddress1": "123 Main", "Transaction": [{"Amount":106.56}] }] }
-
@Zadeh 正如我所提到的,所需的 JSON 在 AtlasCreditCardDetails 下具有多个值,所以我这样做了。你认为我需要改变班级的结构吗?
标签: c# json asp.net-mvc asp.net-web-api serialization