Encrypt and decrypt query string
Post by hanusoftware on
Jun 7, 2007 12:42:18 AM CST
This code has been used to encrypt and decrypt query string. No matter what the length of the url is, this code will encrypt the key and the value the query string into 25 digit.
using System; using System.Collections.Generic; using System.Text; using System.Collections.Specialized; using System.Collections; using System.Web;
namespace BusinessLayer { public class QueryString : NameValueCollection { private string document; public string Document { get { return document; } } public QueryString() { } public QueryString(NameValueCollection clone): base(clone) { } //############################### ################################ //This Class Has been used to get the URl from the address browser of the page // http://www.hanusoftware.com //############################### ################################ //this method has been used to get the current URL of the page public static QueryString FromCurrent() {
//returns the current url from the address bar return FromUrl(HttpContext.Current.Request.Url.AbsoluteUr i);
} /// <summary> /// This method has been used to divide the Address URl into characters chunks /// </summary> /// <param name="url"></param> /// <returns></returns> public static QueryString FromUrl(string url) { //it breaks the address URL in array with separator of ? mark //this line breaks the Querystring and page string[] parts = url.Split("?".ToCharArray()); //instantiate the class object QueryString qs = new QueryString(); //assign the page address to the variable qs.document = parts[0]; //if there is any data in array if (parts.Length == 1) return qs; //breaks the QueryString into characters chunks with separator mark & string[] keys = parts[1].Split("&".ToCharArray()); foreach (string key in keys) { //again breaks into chunks by + mark string[] part = key.Split("=".ToCharArray()); if (part.Length == 1) qs.Add(part[0], ""); //adds the QueryString key and value pair to the assigned variable qs.Add(part[0], part[1]); } return qs;
} /// <summary> /// This method clear all exceptions in the passed string /// </summary> /// <param name="except"></param> public void ClearAllExcept(string except) { //calls the method to clear except ClearAllExcept(new string[] { except });
} /// <summary> /// this is the usual method which has to call clear all exceptions /// </summary> /// <param name="except"></param> public void ClearAllExcept(string[] except) { //take an arrayList ArrayList toRemove = new ArrayList(); foreach (string s in this.AllKeys) { foreach (string e in except) { if (s.ToLower() == e.ToLower()) if(!toRemove.Contains(s)) toRemove.Add(s);
} } foreach (string s in toRemove) this.Remove(s); } /// <summary> /// this method adds the key value pairs in QueryString of the URL /// </summary> /// <param name="name"></param> /// <param name="value"></param> public override void Add(string name, string value) { //checks nullability of the name if (this[name] != null) //if not null then assign value to it this[name] = value; else base.Add(name, value); }
public override string ToString() { return ToString(false); }
/// <summary> /// this ethod has been used to join all the characters array to the URL /// </summary> /// <param name="includeUrl"></param> /// <returns></returns> public string ToString(bool includeUrl) {
string[] parts = new string[this.Count];
string[] keys = this.AllKeys; //for each keys breaks the URL into chunks for (int i = 0; i < keys.Length; i++)
parts = keys + "=" + HttpContext.Current.Server.UrlEncode(this[keys]);
string url = String.Join("&", parts);
if ((url != null || url != String.Empty) && !url.StartsWith("?"))
url = "?" + url;
if (includeUrl)
url = this.document + url;
return url;
}
}
}
Software Development India
|
|
|
|
Comment by techexpert on
Jul 19, 2008 5:06:33 AM CST
|
Report Abuse
|
Hi,
Nice Code, It will be very usefull for all who are working on .NET, ASP.Net. Please post some more use full codes.
----------- Software Development
|
|
|
|
|
|
How to develop a Flxexible Web Design | Mar 5, 2013
|
|
Website comments on updates / improvements please | Feb 28, 2013
|
|
WebsiteGear Introduces Unlimited Web Survey Plan | Dec 4, 2012
|
|
HTML TAGGING PROJECT CONVERSION 100% QUALITY | Nov 28, 2012
|
|
Backup Your Files, Photos, Music online For Free | Nov 25, 2012
|
|
5 common link building mistakes | Aug 27, 2011
|
|
How to convert psd into html? | Jan 15, 2011
|
|
How to choose the right PHP Framework for web deve | Jan 12, 2011
|
|
|
|
|