none
Consulta com e sem acento no LINQ Entity RRS feed

  • Pergunta

  • Eu preciso fazer um select no banco de dados onde tenho um campo que armazena nomes com e sem acento. Gostaria de fazer uma pesquisa onde preciso trazer os nomes que tem acento ou não. Tipo "joão" e "joao". Se o usuario pesquisar por "joao" eu preciso trazer tanto o "joao" quanto o "joão".

    So que eu preciso fazer isso usando o LINQ Entity.


    thwo
    quinta-feira, 24 de novembro de 2011 14:48

Respostas

  • Boa tarde Thiago,

    creio ser possível de duas maneiras. A primeira é muito simples, e consiste em remover os acentos da palavra antes da busca (dos dois lados, banco e aplicação).

    A segunda é mais elegante e consiste em utilizar Expressões Regulares (Regex).

    Por exemplo, o resultado abaixo será verdadeiro caso a variável "nome" tenha o valor "João" ou "Joao":

    Regex.IsMatch(nome, "Jo[aã]o");
    

    Abraços,


    Daniel Cheida de Oliveira
    • Sugerido como Resposta Daniel Cheida quinta-feira, 24 de novembro de 2011 19:12
    • Marcado como Resposta Harley Araujo segunda-feira, 28 de novembro de 2011 11:30
    quinta-feira, 24 de novembro de 2011 19:12