I'm trying to write a generic method that will take a JSON string and convert it to a DataTable (the best it can).
It works fine until it comes across a JSON object that has an array as one of the properties.
What I would like to do, is ignore the properties that are arrays and convert as best it can.
I have an example fiddle that explains what I am trying to do: https://dotnetfiddle.net/cgkNov
public static void Main()
{
    const string JsonObject = @"[{Id:""672af604-495b-4dc0-933e-6c55f56bef82"",""Name"":""1"",""MyArray"":[]}]";
    const string EndResultJsonObject = @"[{Id:""672af604-495b-4dc0-933e-6c55f56bef82"",""Name"":""1""}]";
    var settings = new JsonSerializerSettings
    {
        Error = (obj, args) =>
        {
            var context = args.ErrorContext;
            context.Handled = true;
        }
    };
    var a = JsonConvert.DeserializeObject<DataTable>(JsonObject, settings);
    Console.WriteLine(JsonConvert.SerializeObject(a));
    a = JsonConvert.DeserializeObject<DataTable>(EndResultJsonObject, settings);
    Console.WriteLine(JsonConvert.SerializeObject(a));
}
Thanks, Alex
 
     
     
     
     
    