马歇尔 通过引用 从类继承

本文关键字:继承 引用 马歇尔 | 更新日期: 2023-09-27 17:55:14

我在多重继承和 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...
}

马歇尔 通过引用 从类继承

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

public class Deck : MarshalByRefObject, IDrawable
{
    Drawable _drawable = new Drawable(...);
    // Implement IDrawable
    void IDrawable.Foo() { _drawable.Foo(); }
    void IDrawable.Bar() { _drawable.Bar(); }
}