I have a Json String Like this ,, and i wana load it in C# Array .. When i try to do this i am getting Exception
My String :
{
"customerInformation":
[
{
"customerId":"123",
"CustomerName":"",
"Age":39,
"Gender":"Male",
"StudyInfo":[
{
"Modality":"XRAY",
"StudyName":"Test Name",
"ModalityId":"1",
"StudyID":"10923",
"visitid":41549113,
"billingId":"456",
"RegDate":"mm/dd/yyyy",
"uploaded":"1",
"groupid":"1"
},
{
"Modality":"XRAY",
"StudyName":"CT Test Name",
"ModalityId":"1",
"StudyID":"10924",
"visitid":41549113,
"billingId":"459",
"RegDate":"mm/dd/yyyy",
"uploaded":"1",
"groupid":"1"
}
]
},
{
"customerId":"928",
"CustomerName":"",
"Age":49,
"Gender":"FeMale",
"StudyInfo":[
{
"Modality":"XRAY",
"StudyName":"Test Name",
"ModalityId":"1",
"StudyID":"10923",
"visitid":41549113,
"billingId":"456",
"RegDate":"mm/dd/yyyy",
"uploaded":"1",
"groupid":"1"
},
{
"Modality":"XRAY",
"StudyName":"CT Test Name",
"ModalityId":"1",
"StudyID":"10924",
"visitid":41549113,
"billingId":"459",
"RegDate":"mm/dd/yyyy",
"uploaded":"1",
"groupid":"1"
}
]
}
]
}
My Code :
public class Attributes
{
public string[] customerId { get; set; }
public string[] CustomerName { get; set; }
public string[] Age { get; set; }
public string[] Gender { get; set; }
public string[] StudyInfo { get; set; }
public string[] Modality { get; set; }
public string[] StudyName { get; set; }
public string[] ModalityId { get; set; }
public string[] StudyID { get; set; }
public string[] visitid { get; set; }
public string[] billingId { get; set; }
public string[] RegDate { get; set; }
public string[] uploaded { get; set; }
}
public class DataJsonAttributeContainer
{
public List<Attributes> attributes { get; set; }
}
public static T DeserializeFromJson<T>(string json)
{
T deserializedProduct = JsonConvert.DeserializeObject<T>(json);
return deserializedProduct;
}
public void testing()
{
var container = DeserializeFromJson<DataJsonAttributeContainer>(JsonString);
}
"This returns Null"
And I have tried this also
JArray jArray = (JArray)JsonConvert.DeserializeObject(JsonStr);
dynamic dynObj1 = jArray.OrderByDescending(x => x["customerId"]);
Both Cases got Failed... How to load this .. I am using Newtonsoft.Json Dll
The way you generated you objects is wrong, It should be something like:
public class StudyInfo
{
public string Modality { get; set; }
public string StudyName { get; set; }
public string ModalityId { get; set; }
public string StudyID { get; set; }
public int visitid { get; set; }
public string billingId { get; set; }
public string RegDate { get; set; }
public string uploaded { get; set; }
public string groupid { get; set; }
}
public class CustomerInformation
{
public string customerId { get; set; }
public string CustomerName { get; set; }
public int Age { get; set; }
public string Gender { get; set; }
public List<StudyInfo> StudyInfo { get; set; }
}
public class RootObject
{
public List<CustomerInformation> customerInformation { get; set; }
}
By the way, you can try json2charp, for stuff like this, it's pretty awesome.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With