回调如何传递bool

时间:2017-03-28 13:09:28

标签: c# wcf xaml mediator

我有一个项目(WCF,XAML,C#),在这个项目中我有一个中介类(遵循中介模式)。它允许类在某些操作完成后注册回调(例如从数据库加载数据)。

中介的“注册”方法如下所示:

public void Register(Action<Object> callback, ViewModelMessages message)
    {
        internalList.AddValue(message, callback);
    }

然后在某些点通知注册的类,从而调用回调。一切正常。

问题是当我尝试在动作完成时传递bool类型的变量。在这种特殊情况下,我希望使用此中介模式传递消息,以说明何时发生某种编辑(用户输入编辑数据)。它应该传递'true'或'false'。所以,你会想到一个布尔类型。

希望接收消息的类侧注册如下:

Mediator.Mediator.Instance.Register(
            (Object o) =>
            {
                // o is boolean
                if (o == null)
                    return;

                if ((o as bool) == true)
                    // Editing in progress
                else
                    // Editing over ");
            }, Mediator.Mediator.ViewModelMessages.EditCharacterMode);

现在告诉我的是,这个对象'o'不能是bool,因为bool不可为空。

我觉得我可以用一种丑陋的方式来解决这个问题,比如只用一个bool或类似的东西来制作一个类,但是因为这肯定会经常出现,我想知道是否有优雅或者更为公认的解决方案。

感谢您的时间。

0 个答案:

没有答案