public IActionResult Info(string endpoint) { var query = db.Servers .Where(x => x.endpoint == endpoint) .Include(x => x.gameModes) .FirstOrDefault(); if (query == null) { return(NotFound()); } var info = new ServerInfoDTO { name = query.name, gameModes = query.gameModes.Select(x => x.value).ToArray() }; return(Ok(info)); }
public IActionResult Info(string endpoint, [FromBody] ServerInfoDTO server) { if (server == null || !ModelState.IsValid) { return(BadRequest()); } var query = db.Servers .Where(x => x.endpoint == endpoint) .Include(x => x.gameModes) .FirstOrDefault(); var model = new ServerModel { endpoint = endpoint, name = server.name, gameModes = (server.gameModes .Select( x => new GameModeModel { value = x }).ToList()) }; if (query == null) { db.Servers.Add(model); } else { query.name = model.name; query.gameModes = model.gameModes; } db.SaveChanges(); return(Ok()); }