public HttpResponseMessage DeleteRace(DeleteRaceRequest request) { try { if (request.Id.HasValue) { _dataAccess.DeleteRaceByID(request.Id.Value); } else if (!request.Name.Equals(string.Empty)) { _dataAccess.DeleteFactionByName(request.Name); } return(Request.CreateResponse(HttpStatusCode.OK)); } catch (RaceNotFoundException raceNotFoundException) { return(Request.CreateResponse(HttpStatusCode.InternalServerError, new ErrorResponse(RaceNotFoundException.ERROR_CODE, raceNotFoundException.Message))); } catch (Exception e) { SmartApartmentLogger.LogAsync(ELogType.Error, e.Message); return(Request.CreateResponse(HttpStatusCode.InternalServerError, new ErrorResponse(500, "Internal server error. Please try again later"))); } }
public override async Task <Empty> deleteRace(DeleteRaceRequest request, ServerCallContext context) { var race = await dbContext.Races.FindAsync(request.RaceId); if (race != null) { dbContext.Remove(race); await dbContext.SaveChangesAsync(); } return(new Empty()); }