Interface A
{
string x {get;set;}
IEnumarable<InterfaceB> DetailList { get; set; }
}
Interface B
{
int z;
int y;
}
Class B :Interface B
{
implements z;
implements y;
}
Class A :Interface A
{
implements x;
IEnumarable<ClassB> DetailList {get;set;} // This line is giving trouble.
}
这段代码违反了OO概念。我想如果我从InterfaceB派生ClassB,那么我可以在ClassA中使用ClassB而不是InterfaceB。 VS不喜欢这个,它要求我在ClassA中使用InterfaceB而不是ClassB。 有没有其他的方式去做这件事。如何实现定义另一个接口元素的接口
我愿意考虑替代设计方案,我有一些域对象,其属性由接口A被定义,并且每个域对象将具有对应的通过接口乙 例如 音乐会(A)concertlocations(B) comedyshow定义的对象(A)comedyshowlocations(B)
如果您觉得我不够清楚,请随时提出更多问题。
由于提前
不'DetailList'在接口一个需要被公开设定? – 2011-12-21 23:06:10
是的。它必须是公开可设置的,我愿意考虑替代设计方案,我有一些域对象,其属性由接口A被定义,并且每个域对象将具有对应通过接口B中定义对象 例如 音乐会(A)concertlocations(B ) comedyshow(A)comedyshowlocations(B) – Neel 2011-12-22 01:04:18
您的代码不会编译。但你为什么要这样做?当您想要为其添加ClassB实例时,DetailList仍然可以是IEnum_e_rable。 –
CodeCaster
2011-12-22 01:07:43