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>`.

Respuestas a la pregunta(5)

Su respuesta a la pregunta