public static T MapFromJson(string json, string parentToken = null, SpaceResponse spaceResponse = null) { var jsonToParse = string.IsNullOrEmpty(parentToken) ? json : JObject.Parse(json).SelectToken(parentToken).ToString(); var result = JsonConvert.DeserializeObject <T>(jsonToParse); applyResponse(json, spaceResponse, result); return(result); }
private static void applyResponse(string json, SpaceResponse spaceResponse, object obj) { if (spaceResponse == null) { return; } foreach (var property in obj.GetType().GetRuntimeProperties()) { if (property.Name == nameof(SpaceResponse)) { property.SetValue(obj, spaceResponse); } } spaceResponse.ObjectJson = json; }
public static T MapFromJson(SpaceResponse spaceResponse, string parentToken = null) { return(MapFromJson(spaceResponse.ResponseJson, parentToken, spaceResponse)); }
public static List <T> MapCollectionFromJson(SpaceResponse spaceResponse) { return(MapCollectionFromJson(spaceResponse.ResponseJson, spaceResponse)); }
public static List <T> MapCollectionFromJson(string json, SpaceResponse spaceResponse = null) { var jArray = JArray.Parse(json); return(jArray.Select(tkn => MapFromJson(tkn.ToString(), null, spaceResponse)).ToList()); }