Classe Podcast
public class Podcast
{
public Podcast(string host, string nome)
{
Host = host;
Nome = nome;
}
public string Host { get; set; }
public string Nome { get; set; }
public int TotalEpisodios => ListaEpisodios.Count;
private List<Episodios> ListaEpisodios = new List<Episodios>();
public void AdicionarEpisodio(Episodios episodio)
{
ListaEpisodios.Add(episodio);
}
public void ExibirDetalhes()
{
Console.WriteLine($"O podcast {Nome} tem como host: {Host} e possui {ListaEpisodios.Count} episodio(s)");
Console.WriteLine("\nEPISODIOS");
foreach (Episodios episodios in ListaEpisodios.OrderBy(ep => ep.Ordem))
{
Console.WriteLine($"{episodios.Ordem} - {episodios.Titulo}");
}
}
}
Classe Episodios
public Episodios(string titulo, int ordem, int duracao)
{
Titulo = titulo;
Ordem = ordem;
Duracao = duracao;
}
private List<Convidado> ListaConvidados = new List<Convidado>();
public int Duracao { get; set; }
public int Ordem { get; set; }
public string Resumo => $" Ordem: {Ordem}, Titulo: {Titulo}, Duração: {Duracao} minutos, Convidados: {string.Join(", ", ListaConvidados.Select(c => c.Nome))}";
public string Titulo { get; set; }
public void AdicionarConvidado(Convidado convidado)
{
ListaConvidados.Add(convidado);
}
public void ExibirConvidados()
{
Console.WriteLine($"Lista de convidados do Episodio {Ordem} - {Titulo}");
foreach (var convidado in ListaConvidados)
{
Console.WriteLine(convidado.Nome);
}
}
}