反应性扩展程序等待方法完成

问题描述

| 我们开始使用一些响应式扩展来重构Silverlight应用程序。我有一个初始化方法,可以完成一些工作。我在Initialize方法调用一个方法,该方法必须在调用其余Initialize方法之前完成。
 LoadTaskQueues(_currentUser.InstitutionID);

        if (_params.Task != null)
        {
            LoadTask@R_485_4045@ion(_params.Task);
            return null;
        }
在运行LoadTask@R_485_4045@ion之前,我需要先完成LoadTaskQueues。     

解决方法

假设LoadTaskQueues返回IObservable(您未指定),则要在此处订阅:
LoadTaskQueues()
    .Where(_ => _params.Task != null)
    .Subscribe(_ =>  LoadTaskInformation(_params.Task));