0

Windows 8 ストア アプリに次のコードがあります。

    public static void ConvertUpdateStreamToCollection<T>(this IObservable<UpdateInfo<T>> input, ObservableCollection<T> list)
    {
        input
            .ObserveOnDispatcher()
            .Subscribe(upInfo => UpdateList(upInfo, list));
    }

ObserveOnDispatcher はバックグラウンド スレッドで呼び出されることが多く、監視可能なリストを更新するときは、UI ディスパッチャー上にある必要があります。最初に注文すると、アプリを実行すると正常に動作するように見えます。

しかし、単体テストでこれをテストしたいと思います。組み込みの MSTest を使用しています。ただし、ObserveOnDispatcher は、CoreDispatcher を取得する有効な Window がないことを訴えてスローします。

スタック オーバーフローの他の場所でWPFの回避策を見てきました。しかし、それはディスパッチャーを実行するためのもののように見えます。このエラーはより根本的なようです。既知の回避策はありますか?

4

1 に答える 1