public IObservableX <INavigateToItem> Search(string filter)
 {
     return(string.IsNullOrEmpty(filter)
                         ? ObservableX.Empty <INavigateToItem>()
                         : ServiceClient
            .SelectMany(
                (client) => client.ObserveMany(new SourceSymbolSearchRequest {
         Filter = filter
     }),
                (client, symbol) => (INavigateToItem) new SourceSymbolNavigateToItem(symbol, FileNavigationService)));
 }
 public IObservableX <INavigateToItem> Search(string filter)
 {
     return(Providers
            .Select(provider =>
                    provider
                    .Search(filter)
                    .Catch((Exception exception) =>
     {
         Logger.LogError(exception);
         return ObservableX.Empty <INavigateToItem>();
     }))
            .Merge());
 }