Наследование свойств интерфейса - PullRequest
0 голосов
/ 03 ноября 2018

Возможно, я не очень хорошо объясняю это, так как я не знаком со словарем, но у меня есть интерфейс базового уровня, IMyStuff, который наследуется в цепочке несколько раз.

interface IOnceRemoved 
{
    IMyStuff MyStuff{get;set;}
}

interface ITwiceRemoved : IOnceRemoved
{
    ...
}

interface ITarget : ITwiceRemoved
{
    ...
}

public void MyMethod(ITarget target)
{
    ...
}

У меня есть объект типа IMyStuff. Есть ли способ обернуть этот интерфейс, чтобы MyMethod принял его как ITarget?

1 Ответ

0 голосов
/ 04 ноября 2018

Как уже сказал Камило, вам нужна оболочка типа

class MyStuffAsTargetWrapper : ITarget
{
    public MyStuffAsTargetWrapper(IMyStuff myStuff)
    {
        MyStuff = myStuff
    }
    public IMyStuff MyStuff{ get; set; }
}

, а затем вызвать MyMethod (MyStuffAsTargetWrapper (myStuff)).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...