Usuário com melhor resposta
Select dinâmico

Pergunta
-
Olá para todos, preciso montar uma consulta dinâmica que funciona da seguinte maneira:
function blahblah(estados as Estado()) Dim retorno As Pedido() = Pedido.FindAll().Where(Function(x) x.Estado = ) end function
Ficaria tipo assim:
Dim retorno as Pedido() = Pedido.FindAll().Where(Function(x) x.Estado = estados(0)).OrWhere(Function(x) x.Estado = estados(1))....
Como posso resolver o problema? Obrigado a todos!
Respostas
-
mkoka,Creio que você queira fazer isto:Dim retorno as Pedido() = Pedidos.Where(p => Estados.Contains(p.Estado)).ToList() -- se houver algum erro aqui desculpe-me. Não estou habituado a sintaxe do VB.Assumindo que Estados (o parâmetro de entrada) seja uma lista de Estado e Pedidos possua uma propriedade Estado.Não se esqueça que se Estado for um reference type é possível que a verificação Estados.Contains(p.Estado) retorne false quando o resultado esperado é true.
Allan- Marcado como Resposta mkoka segunda-feira, 15 de março de 2010 20:00
Todas as Respostas
-
mkoka,Creio que você queira fazer isto:Dim retorno as Pedido() = Pedidos.Where(p => Estados.Contains(p.Estado)).ToList() -- se houver algum erro aqui desculpe-me. Não estou habituado a sintaxe do VB.Assumindo que Estados (o parâmetro de entrada) seja uma lista de Estado e Pedidos possua uma propriedade Estado.Não se esqueça que se Estado for um reference type é possível que a verificação Estados.Contains(p.Estado) retorne false quando o resultado esperado é true.
Allan- Marcado como Resposta mkoka segunda-feira, 15 de março de 2010 20:00
-
-
Prezado,
Alguma novidade quanto a essa sua dúvida?
André Alves de Lima
Visite o meu site: http://andrealveslima.spaces.live.com
Me siga no Twitter: @andrealveslima -