Catch json deserialisation errors
SuccessfulCode/SuccessfulCodeTools/master This commit looks good

This commit is contained in:
2020-02-26 12:27:06 +00:00
parent e2556fae85
commit 56554f1f3a
2 changed files with 12 additions and 3 deletions
@@ -7,9 +7,9 @@ namespace SuccessfulCodeTools.Extensions
{
public static class ObjectExtensions
{
public static Lazy<JsonSerializerSettings> _settings = new Lazy<JsonSerializerSettings>(GetSettings);
public static Lazy<JsonSerializerSettings> _settings = new Lazy<JsonSerializerSettings>(JsonSettings);
private static JsonSerializerSettings GetSettings()
private static JsonSerializerSettings JsonSettings()
{
var settings = new JsonSerializerSettings()
{
@@ -8,7 +8,16 @@ namespace SuccessfulCodeTools
{
public static T DeserializeJson<T>(this string value)
{
return JsonConvert.DeserializeObject<T>(value);
try
{
return JsonConvert.DeserializeObject<T>(value);
}
catch (Exception ex)
{
ex = new ArgumentException("Not valid json", nameof(value), ex);
ex.Data.Add("argument value", value);
throw ex;
}
}
public static T ToEnum<T>(this string value)