No se puede implementar el miembro de la interfaz porque no tiene el tipo de retorno coincidente de la Lista <Iterfaz>
Tengo interfacesIChild
yIParent
. IParent
tiene un miembro que es unList<IChild>
.
Deseo tener clases que implementen.IParent
donde cada clase tiene un miembro que implementaIChild
:
public interface IChild
{
}
public interface IParent
{
List<IChild> a { get; set; }
}
public class ChildA : IChild
{
}
public class ChildB : IChild
{
}
public class ParentA : IParent
{
public List<ChildA> a { get; set; }
}
public class ParentB : IParent
{
public List<ChildB> a { get; set; }
}
Pero, este código no compilará. El error es:
`MyApp.Data.ParentA` does not implement interface member `MyApp.Data.IParent.a`.
`MyApp.Data.ParentA.a` cannot implement `MyApp.Data.IParent.a` because it does not have
the matching return type of `System.Collections.Generic.List<MyApp.Data.IChild>`.