none
Consulta LINQ em DataTable usando o where RRS feed

  • Pergunta

  • DataTable

    DataTable Tabela = new DataTable();
    Tabela.Columns.Add("nome_usuario", typeof(string));
    Tabela.Columns.Add("id_usuario",   typeof(string));
    Tabela.Rows.Add("60e73187-c7f9", "Fulaninho");
    Tabela.Rows.Add("e02c12e4-3f51", "Ciclano");


    Gostaria de obter apenas a id de um Usuário realizando a busca pelo nome , não estou conseguindo preciso retornar uma string com a id dele , mas nem a estrutura principal esta dando certo ainda.

    LINQ

                var results = from myRow in Tabela.AsEnumerable()
                              where myRow.Field<string>("nome_usuario") == "Fulaninho"
                              select myRow.Field<string>("id_usuario");


    Como posso realizar uma consulta usando Where para retornar um string ?





    • Editado Matheus MSDN segunda-feira, 27 de junho de 2016 12:22
    segunda-feira, 27 de junho de 2016 12:21

Respostas

  • Boa tarde, Matheus!

    Segue um exemplo:

    Tabela.AsEnumerable().Where(x=> x.Field<string>("nome_usuario") == "Fulaninho").Select(s=> s.Field<string>("id_usuario"));

    Não esquece de adicionar a referência da dll System.Data.DataSetExtensions no seu projeto e o system.data na sua classe

    using System.Data;


    Att,
    Leandro

    Se foi útil, marque como útil ou como resposta.

    segunda-feira, 27 de junho de 2016 15:36

Todas as Respostas

  • Bom dia Matheus,

    Obrigado por sua participação no Fórum MSDN.

    Você poderia tentar:

    string results = (from myRow in Tabela.AsEnumerable()
             where myRow.Field == "Fulaninho"
             select myRow.Field.id_usuario).First().ToString();

    Atenciosamente.


    Robson William Silva

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    segunda-feira, 27 de junho de 2016 14:44
    Moderador
  • Boa tarde, Matheus!

    Segue um exemplo:

    Tabela.AsEnumerable().Where(x=> x.Field<string>("nome_usuario") == "Fulaninho").Select(s=> s.Field<string>("id_usuario"));

    Não esquece de adicionar a referência da dll System.Data.DataSetExtensions no seu projeto e o system.data na sua classe

    using System.Data;


    Att,
    Leandro

    Se foi útil, marque como útil ou como resposta.

    segunda-feira, 27 de junho de 2016 15:36