Usuário com melhor resposta
percorrer duas tabelas

Pergunta
-
Uso VS2010 e C# aspnet4 linqtosql
Estou tentando salvar dados em duas diferentes tabelas e tenho que percorrer as duas, no modelo abaixo ele adiciona na primeira tabela (DetalhesEntrada) mas nao adiciona na segunda tabela (Duplicacao) o que pode tar errado??
//salva na tabelaos DetalhesEntrada
foreach (var item in listaItens)
{
DetalhesEntrada objDetalhes = new DetalhesEntrada()
{
EntradaID = numPedido,
ProdutoID = item.ProdutoID,
Qtd = item.Qtde,
Lote = item.lote,
Validade = item.validade
};
duplicacao objDuplicacao = new duplicacao()
{
Id_Produto = item.ProdutoID,
NomeProduto = item.NomeProduto,
Qtde = item.Qtde,
Lote = item.lote,
Validade = item.validade
};
//codigo para percorrer a tab Produto e dar entrada
Produto BuProduto = dc.Produtos.First(c => c.ProdutoID == item.ProdutoID);
if (BuProduto.ProdutoID == item.ProdutoID)
{
BuProduto.Qtde += item.Qtde;
}
dc.DetalhesEntradas.InsertOnSubmit(objDetalhes);
}
// efetiva as inclusões
dc.SubmitChanges();
lblMsg.Text = "Entrada Confirmada com sucesso";
btnPedido.Enabled = false;
}
catch (Exception ex)
{
lblMsg.Text = ex.Message;
}
}
- Movido Levi Domingos terça-feira, 31 de maio de 2011 16:08 (De:C#)
- Movido Seilor Bonancio Junior terça-feira, 31 de maio de 2011 20:18 (De:ASP.NET)
Respostas
-
Tens de fazer por partes. Tens de enserir primeiro numa tabela e depois enserir na segunda tabela assim ja funciona.
One word frees us of all the weight and pain of life: that word is love.- Marcado como Resposta Álvaro Luiz quarta-feira, 1 de junho de 2011 15:56
Todas as Respostas
-
Tens de fazer por partes. Tens de enserir primeiro numa tabela e depois enserir na segunda tabela assim ja funciona.
One word frees us of all the weight and pain of life: that word is love.- Marcado como Resposta Álvaro Luiz quarta-feira, 1 de junho de 2011 15:56
-
Por partes... igual o jack (stipador =D )
Leonardo B. Moreira - Web Developer .net with asp.net and C# - I know, it is only programming but I like it. http://leonardobatistamoreira.blogspot.com- Marcado como Resposta Álvaro Luiz quarta-feira, 1 de junho de 2011 15:56
- Não Marcado como Resposta AndreAlvesLimaModerator sexta-feira, 10 de junho de 2011 19:43
-
Tudo bem, tô fazendo assim agora, nao dá erro mas também nao salva na tabela Duplicacao
// salva a entrada na tabela Entrada
protected void BtnPedido_Click(object sender, EventArgs e)
{
try
{
Entrada objEntrada = new Entrada()
{
FornecedorID = int.Parse(dropCliente.SelectedValue),
TipoEntrada = dropSaida.SelectedValue,
DataEntrada = Convert.ToDateTime(TxtData.Text),
// TotalEntrada = listaItens.Sum(p => p.Total),
NumEntrada = TxtNumEntra.Text,
};
dc.Entradas.InsertOnSubmit(objEntrada);
dc.SubmitChanges();
//retorna o numero do pedido gerado na tabela Entrada
int numPedido = objEntrada.EntradaID;
//salva na tabela DetalhesEntrada aqui salva
foreach (var item in listaItens)
{
DetalhesEntrada objDetalhes = new DetalhesEntrada()
{
EntradaID = numPedido,
ProdutoID = item.ProdutoID,
// Preco = item.Preco,
Qtd = item.Qtde,
Lote = item.lote,
Validade = item.validade
};
//codigo para percorrer a tab Produto e dar entrada
Produto BuProduto = dc.Produtos.First(c => c.ProdutoID == item.ProdutoID);
if (BuProduto.ProdutoID == item.ProdutoID)
{
BuProduto.Qtde += item.Qtde;
}
dc.DetalhesEntradas.InsertOnSubmit(objDetalhes);
}
//aqui nao salva na tabela Duplicacao, aqui é que tá o problema nao consigo salvar os dados nesta tabela
foreach (var tip in listaItens)
{
duplicacao objduplicacao = new duplicacao()
{
Id_Produto = tip.ProdutoID,
NomeProduto = tip.NomeProduto,
// Preco = tip.Preco;
Qtde = tip.Qtde,
Lote = tip.lote,
Validade = tip.validade
};
}
// efetiva as inclusões
dc.SubmitChanges();
lblMsg.Text = "Entrada Confirmada com sucesso";
btnPedido.Enabled = false;
}