protected void cvParticipante_ServerValidate(object source, ServerValidateEventArgs args) { if (VS_alu_id > 0) { List <ACA_AlunoResponsavel> lista = ACA_AlunoResponsavelBO.SelecionaResponsaveisPorAluno(VS_alu_id); bool existeTipoResponsavel = false; switch (Convert.ToInt32(rblParticipante.SelectedValue)) { case 1: existeTipoResponsavel = (from alr in lista where alr.tra_id == TipoResponsavelAlunoParametro.tra_idPai(__SessionWEB.__UsuarioWEB.Usuario.ent_id) select alr).Count() > 0; break; case 2: existeTipoResponsavel = (from alr in lista where alr.tra_id == TipoResponsavelAlunoParametro.tra_idMae(__SessionWEB.__UsuarioWEB.Usuario.ent_id) select alr).Count() > 0; break; case 3: existeTipoResponsavel = (from alr in lista where alr.alr_principal select alr).Count() > 0; break; } args.IsValid = existeTipoResponsavel; } else { args.IsValid = true; } }
/// <summary> /// Retorna o campo tra_id de acordo com o tipo de responsável do UserControl. Se /// for pai ou mãe retorna os ids que estiverem no parâmetro, se não, retorna o ID /// passado (porque será "outro"). /// </summary> /// <param name="tra_idPrincipal">ID selecionado no combo da tela.</param> /// <returns>tra_id</returns> private int RetornaTraID(int tra_idPrincipal) { switch (VS_TipoResponsavel) { case TipoResponsavel.Mae: { return(TipoResponsavelAlunoParametro.tra_idMae(__SessionWEB.__UsuarioWEB.Usuario.ent_id)); } case TipoResponsavel.Pai: { return(TipoResponsavelAlunoParametro.tra_idPai(__SessionWEB.__UsuarioWEB.Usuario.ent_id)); } default: { return(tra_idPrincipal); } } }