2013-03-24 67 views
0

我确定我错过了一些东西或支持自己进入一些奇怪的沮丧角落,但这是我正在尝试做的事情。如何暴露WhenAny等

我有一个WPF应用程序,使用Unity作为IoC。我有一些有界面的服务。我通过接口处理我的服务,这样服务可以轻松地交换出来,或者我可以为最终用户提供一个选择。所有标准接口编程的东西。

实际上,我所有的服务都实现了ReactiveObject。我现在想做一些命令处理的东西,并试图让CanExecute行为工作。

我的基本问题是我不能使用WhenAny,除非我将接口转换为物理实现(从而获得编译的完整类型层次结构,它可以看到WhenAny)。但是,这种转换违反了接口,意味着我失去了交换实现的能力。

是否有ReactiveUI接口公开WhenAny等,我可以派生我的服务接口,从而能够使用ReactiveUI的伟大功能,同时保持非类型特定的ReactiveUI接口?

+0

没有必要在问题中添加个人问候语。您的联系卡会显示在您所有问题的右下角。 – Patrick 2013-03-24 17:38:02

+0

对不起,这是我第一次问一个问题,从来没有注意到没有人会这样做。 :) – Simon 2013-03-24 17:41:24

回答

0

为什么不能在一个接口的实例上使用WhenAny?从ReactiveUI 4.x开始,WhenAny应该在之间,每对象。

如果你还在使用3.x中,你可以写你的接口是这样的:

interface ICoolInterface : IReactiveNotifyPropertyChanged 
{ 
    /* ... */ 
} 
+0

好的,所以如果我的服务接口继承自IReactive接口,我应该得到WhenAny等扩展?稍后我会试一试并确认。 – Simon 2013-03-25 15:58:56

+0

工作过。我会升级到最新版本,但要抓住修复和功能。 – Simon 2013-03-25 17:11:07