public static GameInfo ToGameInfo(Dictionary <string, AttributeValue> item) { var info = new GameInfo { Code = item["pk"].S.Split("#")[1], OwnerId = item["GSI1-SK"].S, OwnerName = item["ownerName"].S, Status = StatusName.ToStatus(item["GSI1-PK"].S), DateCreated = item["dateCreated"].N, }; // Possibly null if (item.ContainsKey("dateStarted")) { info.DateStarted = item["dateStarted"].N; } if (item.ContainsKey("dateLaunched")) { info.DateLaunched = item["dateLaunched"].N; } if (item.ContainsKey("dateEnded")) { info.DateEnded = item["dateEnded"].N; } if (item.ContainsKey("nextGameCode")) { info.NextGameCode = item["nextGameCode"].S; } if (item.ContainsKey("winningTeam")) { info.WinningTeam = item["winningTeam"].S; } return(info); }