C#实现接口定义的派生类型?

我有一个继承树,看起来像这样:


Foo和Bar均具有Id的,如通过一个具体定义Id的类。这些id类本身是从通用基类派生的。


我现在想编写一个可以同时包含Foo和的接口Bar,但是编译器不允许这样做,我必须将其BaseId用作Fooand的类型Bar,但是我想避免这种情况。


public class BaseId

{

    public string Id {get; set;}

}


public class FooId: BaseId

{}


public class BarId: BaseId

{}


public interface MyInterface

{

    public BaseId Id {get; set; }

}


public class Foo: MyInterface

{

    public FooId Id {get; set;}

}


public class Bar: MyInterface

{

    public BarId Id {get; set;}

}


达令说
浏览 123回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP