public async Task <IActionResult> CloseMatch(int?id) //valida id al cerrar
        {
            if (id == null)
            {
                return(NotFound());
            }

            //buscamos el partido
            var matchentity = await _context.Matches.Include(m => m.Group)
                              .Include(m => m.Local)
                              .Include(m => m.Visitor)
                              .FirstOrDefaultAsync(m => m.Id == id);

            if (matchentity == null)
            {
                return(NotFound());
            }

            //armamos el modelo
            ClosMatchViewModel model = new ClosMatchViewModel
            {
                Group     = matchentity.Group,
                GroupId   = matchentity.Group.Id,
                Local     = matchentity.Local,
                LocalId   = matchentity.Local.Id,
                MatchId   = matchentity.Id,
                Visitor   = matchentity.Visitor,
                VisitorId = matchentity.Visitor.Id
            };

            return(View(model)); //el model pide cuales fueron los goles del loca y visitor y una opciòn de close
        }
        public async Task <IActionResult> CloseMatch(ClosMatchViewModel model)
        {
            if (ModelState.IsValid)
            {
                //envìa el partido y cantidad de goles realizados por el local y el visitor
                await _match.CloseMatchAsync(model.MatchId, model.GoalsLocal.Value, model.GoalsVisitor.Value);

                //direcciona al detailgroup de ese grupo
                return(RedirectToAction($"{nameof(DetailsGroup)}/{model.GroupId}"));
            }

            //si hay error vuelve a armar
            model.Group = await _context.Groups.FindAsync(model.GroupId);

            model.Local = await _context.Teams.FindAsync(model.LocalId);

            model.Visitor = await _context.Teams.FindAsync(model.VisitorId);

            return(View(model));
        }