Wrox Programmer Forums
|
ASP.NET 2.0 Professional If you are an experienced ASP.NET programmer, this is the forum for your 2.0 questions. Please also see the Visual Web Developer 2005 forum.
Welcome to the p2p.wrox.com Forums.

You are currently viewing the ASP.NET 2.0 Professional section of the Wrox Programmer to Programmer discussions. This is a community of software programmers and website developers including Wrox book authors and readers. New member registration was closed in 2019. New posts were shut off and the site was archived into this static format as of October 1, 2020. If you require technical support for a Wrox book please contact http://hub.wiley.com
 
Old July 16th, 2007, 04:18 AM
hanusoftware
Guest
 
Posts: n/a
Default encrypt and decrypt query string

This code has been used to encrypt and decrypt query string .No matter what the lenght 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
//################################################## ###############################################
//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[i] = keys[i] + "=" + HttpContext.Current.Server.UrlEncode(this[keys[i]]);

string url = String.Join("&", parts);

if ((url != null || url != String.Empty) && !url.StartsWith("?"))

url = "?" + url;

if (includeUrl)

url = this.document + url;

return url;

}

}

}
 
Old July 16th, 2007, 04:53 AM
Friend of Wrox
 
Join Date: May 2006
Posts: 106
Thanks: 0
Thanked 0 Times in 0 Posts
Default

What's the prob. then. Why don't use Server.UrlEncode(<value>)

Bijgupt





Similar Threads
Thread Thread Starter Forum Replies Last Post
encrypt and decrypt fuadlutfi85 Pro JSP 0 July 5th, 2007 09:00 PM
decrypt a string converted by a php md5 algorithm? kawak_zx7 General .NET 8 September 15th, 2006 06:51 AM
How to encrypt and decrypt a pwd in vb.net harshaghanta ASP.NET 1.0 and 1.1 Professional 4 July 27th, 2006 03:57 PM





Powered by vBulletin®
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Copyright (c) 2020 John Wiley & Sons, Inc.