Create a unique ID for a page in an ASP.Net Application
<p>I have an ASP.Net app with a lot of pages in it. My problem is to uniquely identify every page in my app. now the app might have pages with just the page name eg: home.aspx and can have pages with query strings eg: testPage.aspx?q1=1&amp;q2=2. </p>

<p>what i have been thinking is since every URL in my app is unique I could use the page name + all query string params concatenated(key and value) to identify the page uniquely. 
eg : 
home.asp -> home</p>

<p>testPage.aspx?q1=1&amp;q2=2 -> testpageq11q22</p>

<p>Is this the correct way to go or is there a better way to do it. </p>

<p>The reason I want to do this is I need to add at run time some meta data information from a database for each of the pages. The PageID then becomes my unique ID which I can then map all my meta data info in the db to.</p>

<p>EDIT:</p>

<p>the position of the query strings in the url is not important. so </p>

<p>testPage.aspx?q1=1&amp;q2=2</p>

<p>testPage.aspx?q2=2&amp;q1=1</p>

<p>are the same </p>

<p>Also there may be some cases where there is a optional query string (does not happen a lot) so something like </p>

<p>testPage.aspx?q1=1&amp;q2=2</p>

<p>testPage.aspx?q1=1&amp;q2=2&amp;opt1=1</p>

<p>would potentially point to the same page (where the optional param gives me some kind of meta information thats is not being used to generate the content on the page)</p>
