Estou tomando o erro abaixo ao implementar o sort.
{"Failed to compare two elements in the array."} {"At least one object must implement IComparable."}
Achei estranho pois na aula (07 Ordenando e Totalizando) não implementamos o IComparable.
class ListaLeitura
{
static void Main(string[] args)
{
if (System.Diagnostics.Debugger.IsAttached)
CultureInfo.DefaultThreadCurrentUICulture = CultureInfo.GetCultureInfo("en-US");
Curso csharpColecoes = new Curso("C#", "João");
csharpColecoes.Adiciona(new Aula("Trabalhando com listas", 21));
csharpColecoes.Adiciona(new Aula("Criando uma aula", 20));
csharpColecoes.Adiciona(new Aula("Modelando com coleções",19));
List<Aula> aulas = new List<Aula>(csharpColecoes.Aulas);
aulas.Sort();
Imprimir(aulas);
}
private static void Imprimir(IList<Aula> aulas)
{
foreach (var aula in aulas)
{
Console.WriteLine(aula);
}
}
}
class Curso
{
private IList<Aula> aulas;
private string nome;
private string instrutor;
public Curso(string nome, string instrutor)
{
this.nome = nome;
this.instrutor = instrutor;
this.aulas = new List<Aula>();
}
public string Instrutor
{
get { return instrutor; }
set { instrutor = value; }
}
public string Nome
{
get { return nome; }
set { nome = value; }
}
public IList<Aula> Aulas
{
get { return new ReadOnlyCollection<Aula>(aulas); }
}
internal void Adiciona(Aula aula)
{
this.aulas.Add(aula);
}
}