Marshall By Reference Наследовать от класса - PullRequest
0 голосов
/ 06 мая 2011

У меня проблема с множественным наследованием и MarshallByRefObj

Проблема в том, что мне нужно наследовать от абстрактного класса И MarshallByRefObj

Абстрактный класс (урезанный):

public abstract class Drawable : IDrawable
{
    //... Several unimportant methods...
    public IEnumerable<ICard> Shuffle (IEnumerable<ICard>)
    {
        //...shuffle the cards here...
    }
}

Класс, который я пытаюсь создать, к которому нужно обращаться по ссылке через wcf Раздетый, очевидно ...:

public class Deck : Drawable, MarshallByRefObject
{
    //... public stuff that implements a deck to include 
    // search/draw/discard functions...
}

1 Ответ

2 голосов
/ 06 мая 2011

Попробуйте извлечь из MarshalByRefObject и реализовать интерфейс другого класса.Затем определите член типа этого класса и сделайте ваш интерфейс просто прокси-вызовами к нему.Это боль, но это просто.

public class Deck : MarshalByRefObject, IDrawable
{
    Drawable _drawable = new Drawable(...);

    // Implement IDrawable
    void IDrawable.Foo() { _drawable.Foo(); }
    void IDrawable.Bar() { _drawable.Bar(); }
}
...