private void AgregarFiltros(ref co_ca_perfiles_no nomina)
 {
   nomina.pe_perfil = FiltrosNomina.ValidarFiltros<string>(nomina.pe_perfil, filtertxt_pe_perfil.Text);
   nomina.pe_descripcion = FiltrosNomina.ValidarFiltros<string>(nomina.pe_descripcion, filtertxt_pe_descripcion.Text);
   nomina.pe_esvigente = FiltrosNomina.ValidarFiltros<TiposBases.EstadoRegistro>(nomina.pe_esvigente,
                                                                                 filtercmb_pe_usvigente.SelectedItem
                                                                                                       .Value);
 }
    protected void strPerfiles_OnReadData(object sender, StoreReadDataEventArgs e)
    {
      try
      {
        int start = e.Start;
        int limit = NumInt.Init(e.Parameters.GetParameter("limit").Value);
        limit = limit == 0 ? e.Limit : limit;
        int page = (start / limit) + 1;

        co_ca_perfiles_no Nomina = new co_ca_perfiles_no();
        Nomina.Pagina = page;
        Nomina.RegistrosPorPaginas = limit;
        Nomina.ColumnaOrden = e.Sort[0].Property;
        Nomina.OrdenColumna =
          (FwpServerControls.FwpDataGridDataBound.Orden)
          Enum.Parse(typeof(FwpServerControls.FwpDataGridDataBound.Orden), e.Sort[0].Direction.ToString(), true);

        IList<object> lista = new List<object>();

        AgregarFiltros(ref Nomina);

        Nomina<co_ca_perfiles_no> data = new bf_ca_perfiles().GetNomina(Nomina);

        foreach (co_ca_perfiles_no no in data.DataSource)
        {
          lista.Add(new
            {
              id_perfil = no.id_perfil,
              pe_perfil = no.pe_perfil,
              pe_descripcion = no.pe_descripcion,
              pe_esvigente = no.pe_esvigente,
              pe_orden = no.pe_orden
            });
        }

        strPerfiles.DataSource = lista;
        strPerfiles.PageSize = limit;
        PageProxy pageProxy = strPerfiles.Proxy[0] as PageProxy;
        if (pageProxy != null) pageProxy.Total = data.Registros;
        strPerfiles.DataBind();

      }
      catch (Exception)
      {
        Mensajes.Error(ErrorText.ERROR_LIST_PERFILES);
      }
    }