DUVIDA Linq ou Ado Net EF

.NET

12/03/2010

Boa Tarde Galera tenho um duvida em Ado Net Ef   Fiz uma pesquisa tipo   var resul = from p in me.ENDERECO where p.CEP == txtCEP.Text select p;   segunda duvida apos fazer essa seleção preciso colocar o resultado da pesquisa em TextBox diferentes   Tipo     txtCidade = valor campo da tabela endereços - Colocar o nome da cidade de que vei no select acima   txtBairro = valor campo da tabela endereços - Colocar o nome da bairro de que vei no select acima
Dyego Furletti

Dyego Furletti

Curtidas 0

Respostas

Fernando Silva

Fernando Silva

12/03/2010

Quando vc usa o EF automaticamente você usa o linq também.

No resultado do seu campo é só colocar

txtCidade = p.CampodaSuaCidade
txtBairro = p.CampodoSeubairro

Espero que tenha ajudado
GOSTEI 0
Dyego Furletti

Dyego Furletti

12/03/2010

Então Fernando eu tentei fazer desse jeito ai mais ele não vê a varial "p" que instancei.   tipo mais ou menos meu codigo   Matricula.Model.Matricula_Entities me = new Matricula.Model.Matricula_Entities();   var resul = from p in me.BLOCOS where p.DESCRICAO == TextBox1.Text select p; A varial "p " so funciona antes select p;   Depois somente o "resul" que vai ter o resultado da pesquisa. Dando algumas busca e recorendo aos amigos cheguei a uma possivel solução usando lambda. Que ficou assim.   Um teste:   bl = me.BLOCOS.FirstOrDefault(end => end.DESCRICAO == TextBox1.Text); TextBox2.Text = bl.BLOCO.ToString(); Mais fico a diposição de mais dicas pois não conheço muito de lambda.  
GOSTEI 0
Devmedia Cursos

Devmedia Cursos

12/03/2010

Olá, Tente.           ModeloDataContext model = new ModeloDataContext();         Product prod = new Product();         var consulta = (from p in model.Products.ToList()
                        select p).Single();
        Label1.Text = consulta.ProductName;   Abs
GOSTEI 0
Eleuterio Gonzalez

Eleuterio Gonzalez

12/03/2010

O Rafael tá certo, tb usaria este código
GOSTEI 0
Dyego Furletti

Dyego Furletti

12/03/2010

blz tentei o que fez recomendarão. Veja como ficou meu codigo     Matricula.Model.Matricula_Entities me = new Matricula.Model.Matricula_Entities();   var consulta = (from p in me.INSTITUICOES.ToList() select p).Single(); Label1.Text = consulta.NOME; Retorna um erro de "A seqüência contém mais de um elemento "
GOSTEI 0
Devmedia Cursos

Devmedia Cursos

12/03/2010

Uma questão, você está usando Linq To SQL ou o Entity Framework?
GOSTEI 0
Dyego Furletti

Dyego Furletti

12/03/2010

Eu estou usando Entity Framework. 
GOSTEI 0
Devmedia Cursos

Devmedia Cursos

12/03/2010

Certo, nesta sua lógica da aplicação, quer retornar somente 1 registro?
GOSTEI 0
Dyego Furletti

Dyego Furletti

12/03/2010

Isso eu tenho que retorna somente um registro neste consulta tipo isso foi somente um teste mais eu tenho que bucar um "cep" na tabela endereço. Automaticamente alimentar os TextBox com as informações.
GOSTEI 0
Devmedia Cursos

Devmedia Cursos

12/03/2010

Veja esse exemplo

             GSIEntities gsi = new GSIEntities();

            int IDProd = Convert.ToInt32(ID);

            tbl_produtos prod = gsi.tbl_produtos.First(p => p.id_produto == IDProd);

            lblNomeProduto.Text = prod.nome_produto;


É de um sistema que desenvolvi, uma loja virtual, basicamente quando é requisitado para ver mais informações de um produto, eu faço a condição do mesmo pelo ID, com isso uso o método First para retornar um único registro.

e atribuo ao textbox.
GOSTEI 0
Dyego Furletti

Dyego Furletti

12/03/2010

Foi fo mesmo jeito que eu fiz antes  bl = me.BLOCOS.FirstOrDefault(end => end.DESCRICAO == TextBox1.Text); TextBox2.Text = bl.BLOCO.ToString(); Utilizando lambda.
GOSTEI 0
Devmedia Cursos

Devmedia Cursos

12/03/2010

Certo, e que erro retornou?

GOSTEI 0
POSTAR