using Microsoft.AspNetCore.Components; using Microsoft.AspNetCore.WebUtilities; namespace MP.Land.Extensions { public static class NavigationManagerExtension { #region Public Methods /// /// Estensione metodo NavigationManager /// /// https://code-maze.com/query-strings-blazor-webassembly/ /// /// /// /// /// public static T ExtractQueryStringByKey(this NavigationManager navManager, string key) { var uri = navManager.ToAbsoluteUri(navManager.Uri); QueryHelpers.ParseQuery(uri.Query) .TryGetValue(key, out var queryValue); if (typeof(T).Equals(typeof(int))) { int.TryParse(queryValue, out int result); return (T)(object)result; } if (typeof(T).Equals(typeof(string))) return (T)(object)queryValue.ToString(); return default; } #endregion Public Methods } }