0

私は何かを逃したか、奇妙な欲求不満のコーナーに戻ったと確信していますが、これが私がやろうとしていることです。

UnityをIoCとして使用するWPFアプリケーションがあります。インターフェースを備えたサービスがたくさんあります。サービスを簡単に交換できるように、またはエンドユーザーに選択肢を提供できるように、インターフェイスを介してサービスを処理します。すべての標準的なインターフェースプログラミングのもの。

実際には、私のすべてのサービスはReactiveObjectを実装しています。私は今、いくつかのコマンド処理を行いたいと思っており、CanExecuteの動作を機能させようとしています。

私の基本的な問題は、インターフェイスを物理的な実装にキャストしない限り、WhenAnyを使用できないことです(したがって、コンパイル用の完全な型階層を取得します。これにより、WhenAnyを確認できます)。ただし、このキャストはインターフェイスに違反しているため、実装を交換することができなくなります。

サービスインターフェイスを派生させて、タイプ固有ではないままReactiveUIの優れた機能を使用できるWhenAnyなどを公開するReactiveUIインターフェイスはありますか?

4

1 に答える 1

0

インターフェイスであるインスタンスでWhenAnyを使用できないのはなぜですか?ReactiveUI 4.x以降、WhenAnyはすべてのオブジェクトに存在する必要があります。

まだ3.xを使用している場合は、次のようにインターフェイスを作成できます。

interface ICoolInterface : IReactiveNotifyPropertyChanged
{
    /* ... */
}
于 2013-03-25T06:21:06.520 に答える