Usuário com melhor resposta
Redirecionar

Pergunta
-
Em uma página de cadastro é inserido um código e então liberado o cadastro. Preciso chamar um outra página de cadastro reserva se o número de inscritos no grupo já estiver lotado.
Hoje está assim:
protected void Page_Load(object sender, EventArgs e) { DateTime dataFinalVip = Convert.ToDateTime(ConfigurationManager.AppSettings["DATAFinalVip"]); if (DateTime.Today > dataFinalVip) Response.Redirect("Cadastro.aspx"); }
Se está dentro do periodo de validade do codigo vip ele redireciona para o cadastro. E também verifica a validade do código:
protected void btnEnviar_Click(object sender, ImageClickEventArgs e) { bool existeCod = BO.Codigo.VerificaExisteCodigo(txtCodigo.Text); if (existeCod) { Session.Contents["ValidouCodigo"] = txtCodigo.Text; Response.Redirect("Cadastro.aspx"); } else { txtCodigoInvalido.Visible = true; } }
Só que preciso verificar se já lotou o grupo de inscitos e se já está lotado redirecionar para a página "CadListaEspera.aspx"
Respostas
-
Continua confuso Rodrigo, o que você precisa exatamente?
Se for o que entendi, é só você fazer:
if(NumeroVagasEmAberto() == 0){
Response.Redirect("CadListaEspera.aspx"); }
- Marcado como Resposta Rodrigo Waldow segunda-feira, 14 de janeiro de 2013 11:19
Todas as Respostas
-
protected void Page_Load(object sender, EventArgs e) { DateTime dataFinalVip = Convert.ToDateTime(ConfigurationManager.AppSettings["DATAFinalVip"]); if (DateTime.Today > dataFinalVip) if (objBOReserva.NumeroVagasEmAberto() == 0) Response.Redirect("CadListaEspera.aspx"); else Response.Redirect("Cadastro.aspx"); } protected void btnEnviar_Click(object sender, ImageClickEventArgs e) { bool existeCod = BO.Codigo.VerificaExisteCodigo(txtCodigo.Text); objVOReserva.IdGrupo = objBOReserva.objVO = objVOReserva; if (existeCod) { Session.Contents["ValidouCodigo"] = txtCodigo.Text; if (objBOReserva.NumeroVagasEmAberto() == 0) Response.Redirect("CadListaEspera.aspx"); else Response.Redirect("Cadastro.aspx"); } else { txtCodigoInvalido.Visible = true; } }
Por enquanto consegui chegar até aqui...
Alguém poderia me ajudar? -
Cara, não entendi bem. Você está querendo trasnferir valores de um controle em uma página para a outra, é isso mesmo? Se for isso, use Server.Transfer ao invés de Response.Redirect, aí você consegue pegar o valor de um dado controle e jogar em outra página. Caso não seja isso, favor dar uma explicada mais detalhada.
-
Vou colocar o código NumeroVagasEmAberto
ublic int NumeroVagasEmAberto() { try { DataTable dt = SqlHelper.ExecuteDataset(sqlConn, CommandType.StoredProcedure, "proc_validaDisponibilidadeReserva", new SqlParameter("@IdGrupo", objVO.IdGrupo)).Tables[0]; if (dt.Rows.Count > 0) { int resultado = Convert.ToInt32(dt.Rows[0][0]); if (resultado > 0) return resultado; else return 0; } else { // NÃO EXISTE NENHUMA VAGA return 0; } }
Através desse método consulto se há vagas em um grupo. Se não há vagas redireciono para o site CadListaEspera.aspx -
Continua confuso Rodrigo, o que você precisa exatamente?
Se for o que entendi, é só você fazer:
if(NumeroVagasEmAberto() == 0){
Response.Redirect("CadListaEspera.aspx"); }
- Marcado como Resposta Rodrigo Waldow segunda-feira, 14 de janeiro de 2013 11:19
-
Já consegui resolver aqui. Obrigado pela ajuda. Era isso que o Guilherme da Luz fez mas eu estava com outro problema. Porque o idGrupo estava sempre null.
protected void Page_Load(object sender, EventArgs e) { DateTime dataFinalVip = Convert.ToDateTime(ConfigurationManager.AppSettings["DATAFinalVip"]); if (DateTime.Today > dataFinalVip) if (objBOReserva.NumeroVagasEmAberto() == 0) Response.Redirect("CadListaEspera.aspx?idGrupo=0"); else Response.Redirect("Cadastro.aspx"); } protected void btnEnviar_Click(object sender, ImageClickEventArgs e) { bool existeCod = BO.Codigo.VerificaExisteCodigo(txtCodigo.Text); int idGrupo = 0; objVOReserva.IdGrupo = idGrupo; objBOReserva.objVO = objVOReserva; if (existeCod) { Session.Contents["ValidouCodigo"] = txtCodigo.Text; if (objBOReserva.NumeroVagasEmAberto() == 0) Response.Redirect("CadListaEspera.aspx?idGrupo=0"); else Response.Redirect("Cadastro.aspx"); } else { txtCodigoInvalido.Visible = true; } }
Fiz assim eresolveu! Obrigado mais uma vez -