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();
        }