DUVIDA Linq ou Ado Net EF

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

Currículo

Respostas

12/03/2010

Fernando Silva

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
Responder Citar

12/03/2010

Dyego Furletti Currículo

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.  
Responder Citar

13/03/2010

Devmedia Cursos

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
Responder Citar

13/03/2010

Eleuterio Gonzalez

O Rafael tá certo, tb usaria este código
Responder Citar

15/03/2010

Dyego Furletti Currículo

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 "
Responder Citar

15/03/2010

Devmedia Cursos

Uma questão, você está usando Linq To SQL ou o Entity Framework?
Responder Citar

15/03/2010

Dyego Furletti Currículo

Eu estou usando Entity Framework. 
Responder Citar

15/03/2010

Devmedia Cursos

Certo, nesta sua lógica da aplicação, quer retornar somente 1 registro?
Responder Citar

15/03/2010

Dyego Furletti Currículo

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.
Responder Citar

15/03/2010

Devmedia Cursos

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.
Responder Citar

15/03/2010

Dyego Furletti Currículo

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

16/03/2010

Devmedia Cursos

Certo, e que erro retornou?

Responder Citar