public string CancelarInscricaoAtletaEmEvento([FromBody] SimuladorFormularioDeAtleta formulario, string token)
        {
            using (SportingTrainingEntities context = new SportingTrainingEntities())
            {
                try
                {
                    Usuario usuarioSessao = usuarioController.UsuarioLogado(token);
                    if (usuarioSessao != null && usuarioSessao.TipoUsuario == "Atleta")
                    {
                        EventoAtleta inscricao = context.EventosAtletas.FirstOrDefault(x => x.IdEventoAtleta == formulario.IdEventoAtleta);

                        if (inscricao != null)
                        {
                            inscricao.InscricaoAtleta = "Cancelada";

                            context.SaveChanges();

                            return("Inscrição cancelada com sucesso!");
                        }
                        else
                        {
                            return("Dados inválidos para cancelamento de inscrição!");
                        }
                    }
                    else
                    {
                        return("Usuário de sessão inválido!");
                    }
                }
                catch (Exception ex)
                {
                    throw new Exception("Erro ao cancelar inscrição de atleta no evento!", ex);
                }
            }
        }
        public string InscreverAtletaEmEvento([FromBody] SimuladorFormularioDeAtleta formulario, string token)
        {
            using (SportingTrainingEntities context = new SportingTrainingEntities())
            {
                try
                {
                    Usuario usuarioSessao = usuarioController.UsuarioLogado(token);
                    if (usuarioSessao != null && usuarioSessao.TipoUsuario == "Atleta")
                    {
                        if (!string.IsNullOrEmpty(formulario.IdAtleta) && formulario.IdEventoInscricao != 0)
                        {
                            EventoAtleta novaInscricao = new EventoAtleta();
                            novaInscricao.Atleta          = context.Atletas.FirstOrDefault(x => x.IdAtleta == formulario.IdAtleta);
                            novaInscricao.Evento          = context.Eventos.FirstOrDefault(x => x.IdEvento == formulario.IdEventoInscricao);
                            novaInscricao.InscricaoAtleta = "Ativa";
                            novaInscricao.DataInscricao   = DateTime.Now;
                            context.EventosAtletas.Add(novaInscricao);

                            context.SaveChanges();

                            return("Inscrição realizada com sucesso!");
                        }
                        else
                        {
                            return("Dados inválidos para inscrição!");
                        }
                    }
                    else
                    {
                        return("Usuário de sessão inválido!");
                    }
                }
                catch (DbEntityValidationException e)
                {
                    foreach (var eve in e.EntityValidationErrors)
                    {
                        System.Diagnostics.Debug.WriteLine("Entidade do tipo \"{0}\" com estado \"{1}\" tem os seguintes erros de validação:",
                                                           eve.Entry.Entity.GetType().Name, eve.Entry.State);
                        foreach (var ve in eve.ValidationErrors)
                        {
                            System.Diagnostics.Debug.WriteLine("- Propriedade: \"{0}\", Error: \"{1}\"",
                                                               ve.PropertyName, ve.ErrorMessage);
                        }
                    }
                    throw;
                }
            }
        }