Array
(
)

DUVIDA Linq ou Ado Net EF

Dyego Furletti
|
MVP
    12 mar 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

Fernando Silva
   - 12 mar 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

0
|
0

Dyego Furletti
|
MVP
    12 mar 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.

 

0
|
0

Devmedia Cursos
   - 13 mar 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

0
|
0

Eleuterio Gonzalez
   - 13 mar 2010

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

0
|
0

Dyego Furletti
|
MVP
    15 mar 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 "

0
|
0

Devmedia Cursos
   - 15 mar 2010

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

0
|
0

Dyego Furletti
|
MVP
    15 mar 2010

Eu estou usando Entity Framework. 

0
|
0

Devmedia Cursos
   - 15 mar 2010

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

0
|
0

Dyego Furletti
|
MVP
    15 mar 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.

0
|
0

Devmedia Cursos
   - 15 mar 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.

0
|
0

Dyego Furletti
|
MVP
    15 mar 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.

0
|
0

Devmedia Cursos
   - 16 mar 2010

Certo, e que erro retornou?

0
|
0