Where com Entity Framework

.NET

Banco de Dados

05/12/2017

Bom dia galera, tudo certo?

Estou começando a utilizar o Entity Framework e estou com um problema em utilizar o Where. O código é simples e é o seguinte:

IEnumerable<Produto> produtosComecadosComA = 
                context.Produtos.Where<Produto>(p => p.Nome.StartsWith("A"));


Rodando no Debug vejo que o where não me retorna uma lista dizendo o seguinte:

"a avaliação de função exige que todos os threads sejam executados"


Alguém sabe o que pode ser?

Um abraço.
Paulo Carvalho

Paulo Carvalho

Curtidas 0

Melhor post

Joel Rodrigues

Joel Rodrigues

07/12/2017

Olá, Paulo.

Dependendo da versão do Visual Studio e do .NET, não é possível depurar instruções com expressões lambda. Tente o seguinte:

1) Remova o <Produto> do Where, pois se a coleção Produtos já deve ser tipada e o Where retornará uma lista de Produto naturalmente.

2) Coloque o breakpoint na linha após essa, assim você conseguirá ver o conteúdo da lista.
GOSTEI 1

Mais Respostas

Paulo Carvalho

Paulo Carvalho

05/12/2017

Bom dia Joel, tudo certo?

Obrigado pela resposta. Mas ainda estou com o mesmo problema. O que eu percebi: esse problema está ocorrendo na verdade quando instancio a minha classe DbContext e somente quando a conexão é com o MySql. Será que é alguma versão dos arquivos Mysql.Data e etc? Estou utilizando as ultimas versões do Entity Framework, MySql.Data e MySql.Entities.

Obrigado
GOSTEI 0
Thiago Farias

Thiago Farias

05/12/2017

Boa tarde.<br />
<br />
Resolvi usando: <br />
<br />
IEnumerable<Produto> produtos = context.Produtos.ToList();<br />
produtos = produtos.Where(p => p.Nome.Contains("P"));
GOSTEI 0
Kevlyn Godoy

Kevlyn Godoy

05/12/2017

Olá Concurseiros


Venha participar do Aniversário do Maior Site de Rateios do Brasil,

O aniversário é do Concurseiros Unidos,
mas o presente quem ganha é você!

Desconto de 30% a 70% em todo o site!
Corre aproveitar antes que termine!
5541991115296
GOSTEI 0
POSTAR