我在将JSON字符串的一部分转换为C#列表时遇到问题。最初的代码没有[JsonProperty],这就是问题的根源。我将[JsonProperty]添加到MdId值中,但问题仍然存在。
C#级
public class PendingPatientDocumentRecord
{
public int PatientDocumentFileMapId;
public short ContextTypeId;
public string PatientVisitId;
public List<string> BillingIds;
public DateTime? DateOfService;
[JsonProperty("MdId")]
public List<string> MdId;
}
反序列化代码
List<PendingPatientDocumentRecord> pendingDocuments = JsonConvert.DeserializeObject<List<PendingPatientDocumentRecord>>(pendingDocumentsJson);
JSON字符串:
[
{
"PatientDocumentFileMapId":12,
"ContextTypeId":3,
"DateOfService":"08/31/2022",
"MdId":"ala"
}
]
错误:
转换值时出错"ala";键入System。集合。通用的列表`1[System.String]'。路径'[0]。MdId’
MdId需要是一个数组,这样才能转换为列表。您不需要JsonProperty属性。
{
"PatientDocumentFileMapId": 12,
"ContextTypeId": 3,
"DateOfService": "08/31/2022",
"MdId": ["ala"]
}