public async Task <T> GetAlbums <T>(int id, AlbumSearchRequest search)
        {
            try
            {
                var url = $"{APIUrl}/{_route}/{id}/Albums";

                if (search != null)
                {
                    url += "?";
                    url += await search.ToQueryString();
                }

                return(await url.WithBasicAuth(Username, Password).GetJsonAsync <T>());
            }
            catch (FlurlHttpException ex)
            {
                var errors = await ex.GetResponseJsonAsync <Dictionary <string, string[]> >();

                var stringBuilder = new StringBuilder();
                foreach (var error in errors)
                {
                    stringBuilder.AppendLine($"{error.Key}, ${string.Join(",", error.Value)}");
                }

                await Application.Current.MainPage.DisplayAlert("Error", stringBuilder.ToString(), "OK");

                return(default(T));
            }
        }
Example #2
0
        public async Task <T> GetAlbums <T>(int id, AlbumSearchRequest search)
        {
            try
            {
                var url = $"{Properties.Settings.Default.APIUrl}/{_route}/{id}/Albums";

                if (search != null)
                {
                    url += "?";
                    url += await search.ToQueryString();
                }

                return(await url.WithBasicAuth(Username, Password).GetJsonAsync <T>());
            }
            catch (FlurlHttpException ex)
            {
                var errors = await ex.GetResponseJsonAsync <Dictionary <string, string[]> >();

                var stringBuilder = new StringBuilder();
                foreach (var error in errors)
                {
                    stringBuilder.AppendLine($"{error.Key}, ${string.Join(",", error.Value)}");
                }

                MessageBox.Show(stringBuilder.ToString(), "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return(default(T));
            }
        }