Linq – Gravando dados em tabelas com relações 1:n

setembro 16, 2008 às 1:06 pm | Publicado em .Net, C#, Linq | 1 Comentário

Semana passada dando continuidade em meus estudos sobre Linq e esbarrei com a seguinte situação: Incluir dados em tabelas com relação 1:n, em SQL seria relativamente fácil, incluiria na primeira tabela, resgataria o id seqüencial que foi gerado e gravaria na segunda tabela, até ai tudo bem, mas como fazer isto em Linq ? Simples rápido e sem dor 🙂 Veja na imagem abaixa uma situação de exemplo:

tabela

Tomando como base o exemplo anterior, vejamos o código a seguir que faz a inserção sem nenhuma complicação:

//Seu DataClasseContext
DataClassesDataContext db new DataClassesDataContext();
//Criando um novo Objeto Cliente
var objCliente = new Cliente()
    {
        Cli_nome = tbNome.Text,
        Cli_cnpj = tbCnpj.Text
    {;
//Agora o Pulo do Gato, como faço a ligacao do objeto Cliente, com o objeto Telefone
var objTelefone = new Telefone()
    {
        Tel_numero = tbFone.Text,
        Tel_tipo = tbTipo.Text,
        Cliente = objCliente; //Simples não?
    };
db.Clientes.InsertOnSubmit(objCliente);
db.Telefones.InsertOnSubmit(objTelefone);
db.SubmitChanges();

Pronto Fácil não? No próximo vou explicar como gravar um List de objetos do tipo telefone!

Abraços!

Crie um website ou blog gratuito no WordPress.com.
Entries e comentários feeds.