public void Main() { WriteLine("7. Expressões nameOf"); Aluno aluno = new Aluno("Marty", "McFly", new DateTime(1968, 6, 12)) { Endereco = "9303 Lyon Drive Hill Valley CA", Telefone = "555-4385" }; WriteLine(aluno.Nome); WriteLine(aluno.Sobrenome); WriteLine(aluno.NomeCompleto); WriteLine("Idade: {0}", aluno.GetIdade()); WriteLine(aluno.DadosPessoais); aluno.AdicionarAvaliacao(new Avaliacao(1, "Geografia", 8)); aluno.AdicionarAvaliacao(new Avaliacao(1, "Matemática", 7)); aluno.AdicionarAvaliacao(new Avaliacao(1, "História", 9)); ImprimirMelhorNota(aluno); Aluno aluno2 = null; ImprimirMelhorNota(aluno2); Aluno aluno3 = new Aluno("Bart", "Simpson"); ImprimirMelhorNota(aluno3); aluno.PropertyChanged += Aluno_PropertyChanged; aluno.Endereco = "Rua Vergueiro, 3185"; aluno.Telefone = "555-1234"; }
public async void Main() { //WriteLine("7. Expressões nameOf"); WriteLine("9. Await Em Blocos Catch e Finally"); StreamWriter logAplicacao = new StreamWriter("LogAplicacao.txt"); try { await logAplicacao.WriteLineAsync("Iniciando aplicação"); Aluno aluno = new Aluno("Marty", "McFly", new DateTime(1968, 6, 12)) { Endereco = "9303 Lyon Drive Hill Valley CA", Telefone = "555-4385" }; await logAplicacao.WriteLineAsync("Aluno Marty McFly criado"); WriteLine(aluno.Nome); WriteLine(aluno.Sobrenome); WriteLine(aluno.NomeCompleto); WriteLine("Idade: {0}", aluno.GetIdade()); WriteLine(aluno.DadosPessoais); aluno.AdicionarAvaliacao(new Avaliacao(1, "GEO", 8)); aluno.AdicionarAvaliacao(new Avaliacao(1, "MAT", 7)); aluno.AdicionarAvaliacao(new Avaliacao(1, "HIS", 9)); ImprimirMelhorNota(aluno); await logAplicacao.WriteLineAsync("Aluno Bart Simpson criado"); Aluno aluno2 = new Aluno("Bart", "Simpson"); ImprimirMelhorNota(aluno2); aluno.PropertyChanged += Aluno_PropertyChanged; aluno.Endereco = "Rua Vergueiro, 3185"; aluno.Telefone = "555-1234"; Aluno aluno3 = new Aluno("Charlie", "Brown"); await logAplicacao.WriteLineAsync("Aluno Charlie Brown criado"); ListaDeMatricula listaDeMatricula = new ListaDeMatricula() { aluno, aluno2, aluno3 }; //listaDeMatricula.Matricular(aluno); //listaDeMatricula.Matricular(aluno2); //listaDeMatricula.Matricular(aluno3); WriteLine("Alunos da Lista"); foreach (var al in listaDeMatricula) { WriteLine(al.DadosPessoais); } } catch (ArgumentException aexc) when(aexc.Message.Contains("não informado")) { string msg = $"Parâmetro {aexc.ParamName} não foi informado"; await logAplicacao.WriteLineAsync(msg); WriteLine(msg); } catch (ArgumentException aexc) { const string msg = "Parâmetro com problema!"; await logAplicacao.WriteLineAsync(msg); WriteLine(msg); } catch (Exception exc) { WriteLine(exc.ToString()); await logAplicacao.WriteLineAsync(exc.ToString()); } finally { await logAplicacao.WriteLineAsync("Aplicação encerrada"); logAplicacao.Dispose(); } }