When I deserialize my jsonstring, I get an error
There was an error deserializing the object of type RecordInfo. End element 'Warning' from namespace '' expected. Found element 'item' from namespace ''.
This is my JsonString
public const string jsonString = @" { ""RequestId"":514106, ""Warning"":[], ""CustomerData"": { ""Email"":"" abc@abc.com "", ""FullName"":""OrTguOfE"", ""OrderData"":[] } }";
Data contracts
[DataContract] public class RecordInfo { [DataMember(Name = "RequestId")] public string RequestId { get; set; } [DataMember(Name = "Warning")] public string Warning { get; set; } [DataMember(Name = "CustomerData")] public CustomerData CustomerData { get; set; } } [DataContract] public class CustomerData { [DataMember(Name = "Email")] public string RequestId { get; set; } [DataMember(Name = "FullName")] public string FullName { get; set; } [DataMember(Name = "OrderData")] public OrderData[] OrderData { get; set; } } [DataContract] public class OrderData { [DataMember(Name = "OrderId")] public string OrderId { get; set; } [DataMember(Name = "SourceId")] public string SourceId { get; set; } [DataMember(Name = "SourceData")] public SourceData[] SourceData { get; set; } } [DataContract] public class SourceData { [DataMember(Name = "SourceDescription")] public string SourceDescription { get; set; } [DataMember(Name = "ProductName")] public string ProductName { get; set; } } }
This is the deserializer that I use
private static T Deserialize<T>(string jsonString) { using (var ms = new MemoryStream(Encoding.Unicode.GetBytes(jsonString))) { var serializer = new DataContractJsonSerializer(typeof(T)); return (T)serializer.ReadObject(ms); } }
When I deserialize bove jsonstring, I get an error
There was an error deserializing the object of type RecordInfo. End element 'Warning' from namespace '' expected. Found element 'item' from namespace ''.
Any suggestions for fixing this error?
Steve source share