diff --git a/Client/Pages/Home.razor b/Client/Pages/Home.razor index 50edc6b..7777592 100644 --- a/Client/Pages/Home.razor +++ b/Client/Pages/Home.razor @@ -66,9 +66,12 @@ Binding Result - - No results - + @if (!_showErrorAlert) + { + + No results + + } @@ -133,4 +136,11 @@ } } + + @if (_showErrorAlert) + { + + Oops! Something went wrong. Please try again. + + } diff --git a/Client/Pages/Home.razor.cs b/Client/Pages/Home.razor.cs index 771a8aa..4261c0f 100644 --- a/Client/Pages/Home.razor.cs +++ b/Client/Pages/Home.razor.cs @@ -27,6 +27,7 @@ public sealed partial class Home : IDisposable private MudTextField _input = null!; private bool loadingIndicator = false; + private bool _showErrorAlert; private IEnumerable bindingResults = []; @@ -42,6 +43,9 @@ private void InputOnChange(string? value) if (!loadingIndicator) loadingIndicator = true; + if (_showErrorAlert) + _showErrorAlert = false; + RestartDebounceTimer(); } @@ -116,6 +120,12 @@ private async Task GetBindingResultsAsync(string inputValue) var results = await response.Content.ReadFromJsonAsync>() ?? []; bindingResults = results.OrderBy(r => r.AllErroneous); } + catch + { + bindingResults = []; + _showErrorAlert = true; + throw; + } finally { isFetchingResults = false;