public NotaFiscal Gera(Fatura fatura) { double valor = fatura.ValorMensal; NotaFiscal nf = new NotaFiscal(valor, ImpostoSimplesSobreO(valor)); foreach (var acao in acoes) { acao.Executa(nf); } return(nf); }
static void Main(string[] args) { EnviadorDeEmail enviadorEmail = new EnviadorDeEmail(); NotaFiscalDao nfDao = new NotaFiscalDao(); IList <IAcaoAposGerarNota> acoes = new List <IAcaoAposGerarNota>(); acoes.Add(enviadorEmail); acoes.Add(nfDao); GeradorDeNotaFiscal gnf = new GeradorDeNotaFiscal(acoes); Fatura fatura = new Fatura(200, "Alex"); gnf.Gera(fatura); Console.ReadKey(); }