我有一個域模型指定接口或我的域,我使用DI來將它連接到實體框架4存儲庫實現。在我的域名,我有以下:實體框架中的一對多關係中的接口繼承問題
public interface IInboundGateway : IGateway
{
ICollection<IInboundNumber> InboundNumbers { get; set; }
}
我則有已生成InboundGateway類我的實體框架模型:
public partial class InboundGateway : EntityObject
{
public EntityCollection<InboundNumber> InboundNumbers { get; set; }
}
爲了實現IInboundGateway inteface我創建了一個局部InboundGateway類。
public partial class InboundGateway : IInboundGateway
{
}
Eventhough EntityCollection <>實現ICollection的<>和InboundNumber實現IInboundNumber我正在一個錯誤報告InboundGateway沒有實現接口IInboundGateway.InboundNumbers因爲InboundGateway.InboundNumbers沒有匹配的返回類型ICollection<IInboundNumber>
我非常確定這是心理的EntityCollection不會實現ICollection和InboundNumber不會實現IInboundNumber。
任何幫助將大規模讚賞謝謝。
當然,考慮到InboundNumbers也是繼承IinboundNumber意味着編譯器可以看到InboundNumber繼承IInboundNumber嗎?沒有? – 2010-11-05 19:37:14
不,就像我說的,即使InboundNumbers實現了IInboundNumber,但不能返回需要ICollection的ICollection 。請注意,*協變*不適用於泛型,這意味着列表不是列表的子類型。 –
2010-11-05 20:28:16