Пример #1
0
 private bool TryGetExistingSubreddit(string subredditName, out SubredditViewModel result)
 {
     result = (from sr in this.Subreddits where subredditName.Equals(sr.DisplayName, StringComparison.OrdinalIgnoreCase) select sr).FirstOrDefault();
     return result != null;
 }
Пример #2
0
        private async void QuickNavigateAction()
        {
            string subredditName = ParseQuickNav();
            string notFoundError = (string)App.Current.Resources["Error_NotFound"];

            if (subredditName == null)
            {
                Messenger.Default.Send<DialogMessage>(new DialogMessage()
                {
                    Message = notFoundError
                });
                return;
            }

            SubredditViewModel subredditViewModel = null;

            if (!TryGetExistingSubreddit(subredditName, out subredditViewModel))
            {

                Func<Task<Subreddit>> action = async () =>
                {
                    return await _dataService.GetSubredditByName(ParseQuickNav());
                };

                Subreddit sr = await Data.Helpers.EnsureCompletion<Subreddit>(action, notFoundError);

                if (sr != null)
                {
                    subredditViewModel = new SubredditViewModel(sr);
                    this.Subreddits.Insert(0, subredditViewModel);
                }
            }

            if (subredditViewModel != null)
            {
                this.CurrentSubreddit = subredditViewModel;
            }
        }