Não consegui entender o código de resposta informado para esse desafio pois não está compilando corretamente . Acredito que apresente inconsistência em algumas das classes criadas. O código do enumerador Formato fica em uma classe própria ou na classe requisição? Tentei das duas formas mas ele só parou de apresentar sintaxe de erro quando o movi para uma classe própria. Gostaria que a versão completa fosse disponibilizada para que eu pudesse fazer a comparação e identificar onde estou errando.
/// public class Conta { public string Titular { get; private set; } public double Saldo { get; private set; }
public Conta(string titular, double saldo) { this.Titular = titular; this.Saldo = saldo; } }
public enum Formato { XML, CSV, PORCENTO }
public class Requisicao { private Formato Formato { get; set; }
public Requisicao(Formato formato) { Formato = formato; } }
interface Resposta { void Responde(Requisicao req, Conta conta); Resposta Proxima { get; set; } }
//Em todas as 3 classes abaixo a propriedade Proximo da interface é solicitada
class RespostaEmCsv : Resposta { public Resposta OutraResposta { get; set; }
public void Responde(Requisicao req, Conta conta) { //NÃO CONSIGO ACESSAR AS PROPRIEDADES DA CLASSE FORMATO if (req. == Formato.CSV) { Console.WriteLine(conta.Titular + ";" + conta.Saldo); } else { this.OutraResposta.Responde(req, conta); } } }
class RespostaEmPorcento : Resposta { private Resposta OutraResposta { get; set; }
public void Responde(Requisicao req, Conta conta) { //NÃO CONSIGO ACESSAR AS PROPRIEDADES DA CLASSE FORMATO if (req. == Formato.PORCENTO) { Console.WriteLine(conta.Titular + "%" + conta.Saldo); } else { OutraResposta.Responde(req, conta); } } }
class RespostaEmXml : Resposta { public Resposta OutraResposta { get; set; }
public void Responde(Requisicao req, Conta conta) { //NÃO CONSIGO ACESSAR AS PROPRIEDADES DA CLASSE FORMATO if (req. == Formato.XML) { Console.WriteLine("" + conta.Titular + "" + conta.Saldo + ""); } else { this.OutraResposta.Responde(req, conta); } } }
///