Click or drag to resize
Json.NETErrorHandling setting
 

This sample uses the Error event to ignore the exceptions thrown from the invalid date strings.

Sample
Usage
 1List<string> errors = new List<string>();
 2
 3List<DateTime> c = JsonConvert.DeserializeObject<List<DateTime>>(@"[
 4  '2009-09-09T00:00:00Z',
 5  'I am not a date and will error!',
 6  [
 7    1
 8  ],
 9  '1977-02-20T00:00:00Z',
10  null,
11  '2000-12-01T00:00:00Z'
12]",
13    new JsonSerializerSettings
14    {
15        Error = delegate(object sender, ErrorEventArgs args)
16        {
17            errors.Add(args.ErrorContext.Error.Message);
18            args.ErrorContext.Handled = true;
19        },
20        Converters = { new IsoDateTimeConverter() }
21    });
22
23// 2009-09-09T00:00:00Z
24// 1977-02-20T00:00:00Z
25// 2000-12-01T00:00:00Z
26
27// The string was not recognized as a valid DateTime. There is a unknown word starting at index 0.
28// Unexpected token parsing date. Expected String, got StartArray.
29// Cannot convert null value to System.DateTime.