Usuário com melhor resposta
Subquery Lambda Expression

Pergunta
-
Respostas
-
- Marcado como Resposta _Manigold_ quinta-feira, 24 de setembro de 2015 16:44
Todas as Respostas
-
Boa tarde , estou tentando fazer uma subquery, mas infelizmente não estou conseguindo.
segue o codigo:
return
bd.CLIENTE.Where(
x => !x.CODIGO.ToString().Any(bd.ACOMPANHAMENTO.Select(v => v.CODIGO_CLIENTE))).ToList();Obrigado.
Coloque as duas entidades aqui no fórum e o que você deseja fazer, assim ficamos mais na duvida do que podemos resolver o seu problema!
Então
As duas Entidades (elas se relacionam) ?
O que é para trazer de sua base de dados ?Seja bem especifico ao deixar uma pergunta (todos os detalhes)!!!
Observação: Só lembrando que ToString() não pode ser usado em Linq dessa forma
- Editado Fulvio Cezar Canducci Dias quinta-feira, 24 de setembro de 2015 15:06
-
Olá Fúlvio tudo blz ?
Tenho as seguintes tabelas
CLIENTE
ACOMPANHAMENTO
Quero transformar essa subquery abaixo em lambda.
select * from CLIENTE where CODIGO not in(select CODIGO_CLIENTE from ACOMPANHAMENTO)
Muito obrigado.
- Editado _Manigold_ quinta-feira, 24 de setembro de 2015 15:45
-
Um bom estudo seria nesse Exemplo de Código que eu disponibilizo aqui!
https://code.msdn.microsoft.com/Entity-Framework-SELECT-79fd0cf6
Tem também meu video sobre isso que está no youtube nesse link: https://www.youtube.com/watch?v=H-biZ8Cro1M ( só peço desculpa porque eu falo a pronuncia do Entity errado)
Código exemplo
Lista é os itens que eu quero dar um not in e SeectNoIn é o que não contem aquela lista!
NOT IN ICollection<int> Lista = Db.TbBs .AsNoTracking() .Select(x => x.Id).ToList<int>(); var SelectNotIn = Db.TbAs .AsNoTracking() .Where(x => !Lista.Contains(x.Id)) .AsQueryable(); var GeracaoTNotIn = SelectNotIn.ToList();
- Editado Fulvio Cezar Canducci Dias quinta-feira, 24 de setembro de 2015 16:21
-
-
- Marcado como Resposta _Manigold_ quinta-feira, 24 de setembro de 2015 16:44
-
Aee agora foi, vou postar o codigo:
return bd.CLIENTE
.AsNoTracking()
.Where(x => !bd.ACOMPANHAMENTO.Select(a => a.CODIGO_CLIENTE).Contains(x.CODIGO)).ToList()
.Select(
dados => new ClienteMod()
{
Codigo = dados.CODIGO,
Nome = dados.DS_NOME,
Celular = dados.DS_CELULAR,
Email = dados.DS_EMAIL
}
).ToList();