Monday, 25 July 2011

How to use URL mapping in ASP.NET 2.0 and VB.NET


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

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="~/UrlMappingVB.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>

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.

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>

We used over 10 web hosting companies before we found Server Intellect. Their dedicated servers and add-ons were setup swiftly, in less than 24 hours. We were able to confirm our order over the phone. They respond to our inquiries within an hour. Server Intellect's customer support and assistance are the best we've ever experienced.

The front end UrlMappingVB.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>

Looking for the C#.NET 2005 Version? Click Here!


Looking for more ASP.NET Tutorials? Click Here!

No comments:

Post a Comment