Array
(
)

Como salvar dados em duas tabelas ao mesmo tempo Asp.Net MVC

Alysson Pinheiro
|
MVP
Pontos: 300
    29 set 2016

Olá, gostaria de uma ajuda. Eu to usando o exemplo do "Curso de ASP.NET MVC - Criando uma Loja Virtual", aonde eu tenho a classe Carrinho. Tenho também 3 classes Locação, Item e Caçamba, aonde a minha classe Item de os IDs do Item e da Locação e um atributo Quantidade. Minha duvida é, como eu consigo gravar no banco a locação e os Itens ao mesmo tempo utilizando a classe carrinho. Obrigado desde já.
#Código
public class Carrinho
{
protected readonly List<Item> _ItemCarrinho = new List<Item>();
//Adicionar
public void AdicionarItem(Cacamba cacamba, int quantidade)
{
Item item = _ItemCarrinho.FirstOrDefault(c => c.Cacamba.CacambaId == cacamba.CacambaId);
if (item == null)
{
_ItemCarrinho.Add(new Item
{
Cacamba = cacamba,
CacambaId = cacamba.CacambaId,
Quantidade = quantidade
});
}
else
{
throw new Exception("Está caçamba já foi adicionada.");
//item.Quantidade += quantidade;
}
}
//Remover Item
public void RemoverItem(Cacamba cacamba)
{
_ItemCarrinho.RemoveAll(l => l.Cacamba.CacambaId == cacamba.CacambaId);
}
//Obter o valor total
public decimal ObterValorTotal()
{
return _ItemCarrinho.Sum(e => e.Cacamba.Preco * e.Quantidade);
}
//Limpar Carrinho
public void LimparCarrinho()
{
_ItemCarrinho.Clear();
}
//Itens carrinho
public IEnumerable<Item> ItensCarrinho
{
get { return _ItemCarrinho; }
}
}