private bool UpsertCharacter(AvailableCharacter character, bool update) { try { var args = new object[] { "@name", character.Name, "@speed", character.Speed, "@ac", character.AC, "@owner", character.Owner == null ? "NPC" : character.Owner, "@maxHP", character.MaxHP, "@dexMod", character.DexModifier }; if (update) { args = args.Append("@id").Append(character.Id).ToArray(); } using (var dbc = DatabaseHelper.GetConnector()) using (var cmd = dbc.BuildStoredProcedureCommand(update ? "spUpdateCharacter" : "spSaveCharacter", args)) { cmd.ExecuteNonQuery(); } } catch (Exception ex) { _log.Error(ex); return(false); } return(true); }
public IActionResult SaveCharacter([FromBody] AvailableCharacter character) { return(_characterService.SaveCharacter(character) ? Ok() as IActionResult : BadRequest("Error saving character") as IActionResult); }
/// <summary> /// Save a new character to the database /// </summary> /// <param name="character">Character to save</param> /// <returns>The success or failure of the save operation</returns> public bool SaveCharacter(AvailableCharacter character) { return(UpsertCharacter(character, false)); }
/// <summary> /// Update information about an existing character /// </summary> /// <param name="character">Character to update</param> /// <returns>The success or failure of the update operation</returns> public bool UpdateCharacter(AvailableCharacter character) { return(UpsertCharacter(character, true)); }