Marshall By Reference从类继承

时间:2011-05-05 22:06:44

标签: c# wcf c#-4.0 marshalling

我遇到了多重继承和MarshallByRefObj

的问题

我遇到的问题是我需要继承一个抽象类AND 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 个答案:

答案 0 :(得分:2)

尝试从MarshalByRefObject派生,并实现其他类的接口。然后,定义该类的类型的成员,并使您的接口只是代理调用它。这是一种痛苦,但它很简单。

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

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