ASP.NET/C#: Como recuperar os dados que foram associados ao DataSource de um ListBoundControl

asp-netOlá pessoal, tudo bom?

Caso você tenha dados que já foram atribuídos ao DataSource de um determinado ListBoundControl, (GridView, DataList, DropDownList, etc) e precise recuperá-los, para por exemplo, realizar um novo filtro/pesquisa sobre os mesmos, uma maneira simples é realizar o cast dos dados ligados ao DataSource para uma lista de objetos do tipo dos que foram originalmente associados a ele.

Repare no exemplo a seguir que temos um DataList chamado dlProdutos e que ao mesmo foi associada uma lista de objetos de uma classe chamada Produto. A intenção do exemplo é que possamos recuperar os dados do DataList e montar uma consulta LINQ realizando um novo filtro sem necessidade de uma nova consulta no Banco de Dados.


protected void btnProcurar_Click(object sender, EventArgs e)
{
  ...
  ...
  List<Produto> dados = dlProdutos.DataSource as List<Produto>;
  ...
  dlProdutos.DataSource = (from p in dados
             where p.Nome.Contains(txtPalavraChave.Text)
             select p).ToList();
  dlProdutos.DataBind();
  ...
}

Espero ter ajudado!

Grande abraço,
Eduardo Henrique Rizo

[twitter-follow screen_name=’eduardorizo’ show_count=’yes’]

Marcado com: , , , , , , , , , , , , , , ,
3 comentários sobre “ASP.NET/C#: Como recuperar os dados que foram associados ao DataSource de um ListBoundControl
  1. celso jacinto(Cj) disse:

    pessoal eu gostaria de saber como faço pra nao perder os dados da base de dados sempre que o pc reinicia me esquece de dizer que é em c#

  2. Carlos Sitolino disse:

    Ajudou muito, Valeu!!

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

*