public static string RemoveQueryStringKeyFromUrl(string OriginalUrl, string QsKeyToRemove) { return(Urls.RemoveQueryStringKeyFromUrl(OriginalUrl, QsKeyToRemove)); var url = new Uri(OriginalUrl); return(RemoveQueryStringKeyFromUrl(url, QsKeyToRemove)); }
public static string RemoveQueryStringKeyFromUrl(Uri OriginalUri, string QsKeyToRemove) { return(Urls.RemoveQueryStringKeyFromUrl(OriginalUri, QsKeyToRemove)); var uri = OriginalUri; var baseUrl = uri.AbsoluteUri.Replace(uri.Query, ""); // var basePath = uri.AbsolutePath; //Anchor Tag var currAnchor = uri.Fragment.Replace("#", ""); //var providedAnchor = NewAnchor.Replace("#", ""); var newAnchor = ""; if (currAnchor != "") { // if (NewAnchor != "") // { // newAnchor = providedAnchor; // } // else // { newAnchor = currAnchor; //} newAnchor = "#" + newAnchor; } //else //{ //newAnchor = providedAnchor; //} //Query String Values var qs = GetQueryStringDictionary(uri.Query); if (qs.ContainsKey(QsKeyToRemove)) { qs.Remove(QsKeyToRemove); } var allQs = AssembleQueryString(qs); //Build New Url var newUrl = string.Format("{0}?{1}{2}", baseUrl, allQs, newAnchor); newUrl = newUrl.Replace("?&", "?"); //Cleanup if all QS have been removed return(newUrl); }