public async Task<IHttpActionResult> ChangeStatus(ChangeStatusRequest dto) { Lobby template = new Lobby() { Id = dto.Id, Status = (enLobbyStatus)Enum.Parse(typeof(enLobbyStatus), dto.Status) }; try { string[] arProp = new string[] { "Id", "Status", "GameGroups", "Template" }; var entry = ctx.Entry<Lobby>(template); entry.State = EntityState.Modified; typeof(Lobby).GetProperties().Select(o => o.Name).Where(o => !arProp.Contains(o)).ToList() .ForEach(o => entry.Property(o).IsModified = false); await ctx.SaveChangesAsync(); } catch (Exception ex) { ex = ex.InnerException ?? ex; Logger.Exception_Error(ex); return InternalServerError(ex); } return Ok(); }
public async Task<IHttpActionResult> AddLobby(Lobby lobby) { try { ctx.Lobbies.Add(lobby); await ctx.SaveChangesAsync(); } catch (Exception ex) { ex = ex.InnerException ?? ex; Logger.Exception_Error(ex); return InternalServerError(ex); } return Ok(); }