I used westwind globalization library http://west-wind.com/westwind.globalization/ on my project to implement multiple languages. Everything is working fine. Only one problem is that I get culture reference variable at the end of url as http://localhost:18106/LangTest?LocaleId=en.
I want culture reference variable in between domain and page name like http://localhost:18106/en/LangTest.
Acutally I want to do like Microsoft web site http://www.microsoft.com/en-us/default.aspx for example.
You need to use IRouteHandler and you need to create custom routes.
By default, Web Forms use file system request handling. For example the MyWebsite/contact.aspx request searches for the contact.aspx file located under the root menu. MyWebsite/superheroes/superheroes.aspx should look for the superheroes.aspx file located inside the superheroes file under the root menu.
Using the global.asax file you may add our own handling. All you need is to call a method, having a RouteCollection parameter, from within the Application_Start method. So you need to create a method called RegisterRoutes and place it within a new file called MyRouteConfig.cs
Here is example:
Please have a look to this article: http://dotnethints.com/blogs/localization-using-routing-system-on-a-web-forms-project-