Beispiel #1
0
        private void btnFinalizar_Click(object sender, EventArgs e)
        {
            DAL.LocacaoDAL          lDAL         = new DAL.LocacaoDAL();
            BLL.Locacao             locacao      = new BLL.Locacao();
            List <BLL.LocacaoFilme> locacaoFilme = new List <BLL.LocacaoFilme>();

            foreach (BLL.Filmes f in listaFilmes)
            {
                BLL.LocacaoFilme lItem = new BLL.LocacaoFilme();
                lItem.CodFilme   = f.Cod;
                lItem.CodLocacao = f.Cod;


                locacaoFilme.Add(lItem);
            }

            locacao.CodCliente   = clientes.Cod;
            locacao.ListaDeItens = locacaoFilme;

            try
            {
                lDAL.Cadastrar(locacao);
                MessageBox.Show("Locação Registrada");
            }
            catch (Exception erro)
            {
                MessageBox.Show(erro.Message);
            }
            listaFilmes.Clear();
            dgvResultado.DataSource = null;
        }
        public void Cadastrar(BLL.Locacao l)
        {
            int        chaveGerada;
            SqlCommand cmd = new SqlCommand();

            cmd.Connection  = con.Conectar();
            cmd.CommandText = @"INSERT INTO TB_Locacao       
                                    (CodCliente, DataLocacao)
                                VALUES 
                                    (@codCli, getdate());
                                
                                SELECT SCOPE_IDENTITY();";
            cmd.Parameters.AddWithValue("@codCli", l.CodCliente);
            chaveGerada = Convert.ToInt16(cmd.ExecuteScalar());

            SqlCommand cmdItens = new SqlCommand();

            cmdItens.Connection  = con.Conectar();
            cmdItens.CommandText = @"INSERT INTO TB_Locacao_Filme
                                        (CodLocacao, CodFilme)
                                    VALUES
                                        (@codLocacao, @codFilme)";
            cmdItens.Parameters.Add("@codLocacao", SqlDbType.Int);
            cmdItens.Parameters.Add("@codFilme", SqlDbType.Int);

            foreach (BLL.LocacaoFilme item in l.ListaDeItens)
            {
                cmdItens.Parameters["@codLocacao"].Value = chaveGerada;
                cmdItens.Parameters["@codFilme"].Value   = item.CodFilme;
                cmdItens.ExecuteNonQuery();
            }

            con.Desconectar();
        }