DotNet Tutorials

V4 Dot Net Tutorials

Server Intellect Cloud Hosting

 How to use URL mapping in ASP.NET 2.0 and C#

This tutorial will show you how to use URL mapping technology in ASP.NET 2.0 and C#.

The URL mapping feature uses configuration information stored in web.config to remap incoming requests to a different URL. The remapping occurs prior to any other processing for the inbound request. Although the sample below demonstrates remapping a page request, any arbitrary file type can have its request remapped to a different URL.

At first you need to build a sitemap file Web.sitemap. The code as following:

<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0">
<siteMapNode url="~/UrlMappingCsharp.aspx" title="Home Page" description="This is the home page" >
<siteMapNode url="~/Category.aspx" title="Categories" description="Information Categories" >
<siteMapNode title="News" description="News" url="~/News.aspx" />
<siteMapNode title="Games" description="Games" url="~/Games.aspx" />
<siteMapNode title="Health" description="Health" url="~/Health.aspx" />
</siteMapNode>
</siteMapNode>
</siteMap>

I just signed up at Server Intellect and couldn't be more pleased with my Windows Server! Check it out and see for yourself.

Secondly, please build a web.config file. The code is as following::

<?xml version="1.0" ?> <configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
<system.web>
<urlMappings enabled="true">
<add
url="~/News.aspx" mappedUrl="~/UrlMappingVB.aspx?category=news" />
<add
url="~/Category.aspx" mappedUrl="~/UrlMappingVB.aspx?category=default" />
<add
url="~/Games.aspx" mappedUrl="~/UrlMappingVB.aspx?category=games" />
<add
url="~/Health.aspx" mappedUrl="~/UrlMappingVB.aspx?category=health" />
</urlMappings>
</system.web>
</configuration>

The front end UrlMappingCsharp.aspx page looks something like this:

<table>
<tr>
<td><asp:SiteMapDataSource Runat=server ID="SiteMapDataSource1" />
<br /></td>
</tr>
<tr>
<td>
<asp:Label Runat=server Text="TreeView" id="Label3" ForeColor="#ff3366" />
<asp:TreeView ID="TreeView1" DataSourceID="SiteMapDataSource1" Runat=Server />
</td>
</tr>
<tr>
<td>
The current virtual path for the request is:<b> <% Response.Write(Request.Path)%></b>.
<br />
The value of the category querystring variable is:<b> <% Response.Write(Server.HtmlEncode(Request.QueryString("category")))%></b>.
<br />
However, the original path that was requested before it was remapped is:<b> <% Response.Write(Request.RawUrl)%></b>.
</td>
</tr>
</table>


Yes, it is possible to find a good web host. Sometimes it takes a while. After trying several, we went with Server Intellect and have been very happy. They are the most professional, customer service friendly and technically knowledgeable host we've found so far.



Looking for the VB.NET 2005 Version? Click Here!

Looking for more ASP.NET Tutorials? Click Here!

Download Project Source - Enter your Email to be emailed a link to download the Full Source Project used in this Tutorial!



100% SPAM FREE! We will never sell or rent your email address!