private async Task ExecuteSearchBeersCommand() { if (IsBusy) { return; } using (Insights.TrackTime("BeerSearch", "searchTerm", SearchTerm)) { _userDialogs.ShowLoading("Searching..."); IsBusy = true; IsSearched = true; try { var results = await _beerDrinkinClient.SearchBeersAsync(SearchTerm); Beers.Clear(); if (results?.Count > 0) { foreach (var beer in results) { Beers.Add(beer); } } _userDialogs.HideLoading(); } catch (Exception ex) { _userDialogs.ShowError(ex.Message); } finally { IsBusy = false; } } }