Por favor, considere el siguiente código:Diccionario <StudentType, List <Student>> to IDictionary <StudentType, IList <Student>>?
class Student
{
}
enum StudentType
{
}
static void foo(IDictionary<StudentType, IList<Student>> students)
{
}
static void Main(string[] args)
{
Dictionary<StudentType, List<Student>> studentDict =
new Dictionary<StudentType, List<Student>>();
foo(studentDict);
...
}
Existe el error:
error CS1503: Argument '1': cannot convert from 'System.Collections.Generic.Dictionary>' to 'System.Collections.Generic.IDictionary>'
¿Hay alguna manera de llamar a la función foo?
a implementar sus propias colecciones? Si no, no puede ver ninguna razón para evitar tener 'static void foo (Dictionary> students)' que también resolverá este problema. –
'static void foo (IDictionary> estudiantes) ' es solo por simplicidad. En lugar de 'foo()' IDictionary <> se pasa a otra parte de mi aplicación, por lo que es necesario utilizar 'IDictionary <>' y 'IList <>' para proporcionar una abstracción. –