void AddExpansionToDatabase(JToken cardList, string expansion, string abbreviation) { if (!DatabaseManager.CheckIfSetExists(expansion)) { DatabaseManager.AddNewSet(expansion, abbreviation, null, "non_mtg"); Logger.LogActivity("Adding new set: " + expansion + " to databse"); } foreach (var card in cardList) { try { string multiverseID = PrepareString(card, "multiverseid"); if (DatabaseManager.CheckIfCardExists(multiverseID)) { continue; } Dictionary <string, object> values = new Dictionary <string, object>(); values.Add("category", PrepareString(card, "category")); values.Add("number", PrepareString(card, "number")); values.Add("name", PrepareString(card, "name")); values.Add("team", PrepareString(card, "team")); values.Add("printRun", PrepareString(card, "printRun")); values.Add("odds", PrepareString(card, "odds")); values.Add("other", PrepareString(card, "other")); values.Add("inventory", 0); try { DatabaseManager.AddNewCard("non_mtg", values); } catch (Exception ex) { Logger.LogError("Adding MtG card to database", ex.ToString(), card.ToString()); } } catch (Exception ex) { //TODO: THROW MY OWN EXCEPTIONS Logger.LogError("Preparing MtG card data to be added to database", ex.ToString(), card.ToString()); } } }