How To Use System.Web.Routing To Not URL Rewrite In Web Forms
Jan 12, 2010
I am using System.Web.Routing with ASP.NET (3.5) Web Forms that will URL rewrite the following URL from
http://www.myurl.com/campaign/abc
http://www.myurl.com/default.aspx?campaign=abc
The code is as below:
public static void RegisterRoutes(RouteCollection routes)
{
routes.Add("CampaignRoute", new Route
(
"{campaign_code}",
new CustomRouteHandler("~/default.aspx")
));
}
IRouteHandler implementation:
public class CustomRouteHandler : IRouteHandler
{
public CustomRouteHandler(string virtualPath)
{
VirtualPath = virtualPath;
}
public string VirtualPath { get; private set; }
public IHttpHandler GetHttpHandler(RequestContext
requestContext)
{
if (requestContext.RouteData.Values.ContainsKey("campaign_code"))
{
var code = requestContext.RouteData.Values["campaign_code"].ToString();
HttpContext.Current.RewritePath(
string.Concat(
VirtualPath,
"?campaign=" + code));
}
var page = BuildManager.CreateInstanceFromVirtualPath
(VirtualPath, typeof(Page)) as IHttpHandler;
return page;
}
However I noticed there are too many things to change on my existing aspx pages (i.e. links to javascript, links to css files).
So I am thinking if there's a way to keep above code but in the end rather than a rewrite just do a Request.Redirect or Server.Transfer to minimize the changes needed. So the purpose of using System.Web.Routing becomes solely for URL friendly on the first entry.How to ignore the rest of the patterns other than specificed in the code?
View 1 Replies
Similar Messages:
Sep 13, 2010
we are using URL Routing so a path like
[URL] would be output like [URL]
we have a data pager on the page that ties to the list view.
the data pager when changing pages reverts the url back to the un-routed version (like[URL])
how can i re-write this back to something more friendly for my app
ideally it would be great to have it look sometihng like /news/page/2
i can use IIS 7's new re-write module - already using it to remove trailing slashes.
View 2 Replies
Dec 12, 2010
I am using:
ASP.NET 3.5 SP1 with Web Forms Routing thru Global.asax (System.Web.Routing and RegisterRoutes)IIS 7
Everything is working fine in my local machine, but it gives the following error in my hosting environment:
Could not load file or assembly 'System.Web.Routing, Version=3.5.0.0, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.
I did everything inside my web.config file mentioned in the following link:
[URL]
But I am still getting the above error.
What else am I supposed to do fix the error?
View 1 Replies
Jan 13, 2010
I am using ASP.NET 2.0 on IIS6 therefore I can't use system.web.routing. I've tried a few URL rewriters but none did what I wanted.I basically need to transform (read/parse then redirect) URL 1 into 2 with minimum IIS configuration because I don't have the full authority to reconfigure web servers (i.e. ISAP on IIS6 or install 3rd party extensions/libraries). And I can't transform URL into 3 because all the physical links will break. [URL]
View 3 Replies
Dec 15, 2010
ASP.net 4.0 / IIS7.
I want to "alias" a single web form to appear as various extensionless urls. Given a form in my web root called "mySite.com/ColorWebForm456.aspx":
I want it served as multiple names, e.g., mySite.com/Color, mySite.com/Colour, mySite.com/Colors, mySite.com/Coler, etc., without creating folders and duplicate forms with those names.I never want mySite.com/ColorWebForm456.aspx displayed in the browser, it needs to display as mySite.com/Color, even if the user somehow acquires it and types in that exact ~.aspx address. The variations will account for several alternate or mis-spellings users might attempt - I don't want them "corrected", however. So, if a user types in mySite.com/Colour, the url is NOT rewritten to mySite.com/Color, but the same page is served via ColorWebForm456.aspx as the requested "mySite.com/Colour".
I've seen so many articles on this that I'm not even sure where this would be best handled: in Global.asax, IIS7 URL Rewrite, web.config, etc., and I'm not even sure this is technically a case of url rewriting or routing... ?
View 4 Replies
Feb 19, 2010
I have implemented my own IRouteHandler for URL routing. For files without extension it will try to load the filename as a Page from the Pages directory with:
return (IHttpHandler) BuildManager.CreateInstanceFromVirtualPath(path, typeof(Page));
However there are also images and css files (with relative paths) that need to be translated to the correct url. I try to service those files with:
try {
HttpContext.Current.Server.Transfer(fileName);
} catch (HttpException) {
throw new HttpException(404, "file not found");
}
This works fine (in Internet Explorer), however Firefox is giving me an error:
Styles.css was not loaded because its MIME type, "text/html", is not "text/css".
Is this caused by the Server.Transfer? What should I use to redirect the file? Response.Redirect is visible to the client.
View 1 Replies
Oct 5, 2010
Hopefully I am just overlooking something incredibly simple, if so I apologize....I have an ASP.NET application in .NET4 and we're trying to use URL rewriting using
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule....>
For some reason intellisense is returning an error which says that <rewrite> is not a valid child element of <system.webserver>When I build it and run it, it says something akin to "Error at line 0 in web.config"If I remove all the <rewrite> lines it works properly (but of course no rewriting)Is there a switch I need to flip on or something? It has to be something I'm stupidly overlooking....
View 3 Replies
Jun 1, 2010
I'm trying to fix conical format violation for SEO but when I add <rewrite> to the <system.webServer> sectionI get this error the element system.webServer has invalid child element rewrite I've tried this by adding a rule withhe admin tool in IIS 7 and I've tried adding it directly into the web.config file in a 3.5 and 4.0 frameworksand I also tried it with VS 2010 pro and VS 2008 pro I can't find where I missed a step all the blogs and tutorials just show how to add this to the web.config file I haven't been able to find out how to add this element to system.webServer
View 3 Replies
Jan 7, 2010
I've sucefully runned it in my local server (Windows Server 2003 Standart) but after tried several times upload it to my hosting, it never works. The web hosting company told first that they didn't had System.Web.Routing.dll installed (but they said that they've .NET 3.5 installed..), then i've copied the dll to Bin folder and again with no sucess. Can someone give me a very basic example of and website using System.Web.Routing.dll so i can do the "final" test on webhost before i go to the company because they say that they have 3.5 installed but i'm starting to see that they didn't have? If possible, is there another way to test if this dll is installed in web hosting? (test all .dll running for example)
View 1 Replies
Feb 5, 2010
When I try to use Routes in new ASp.Net WebaPplication using .Net framowork 3.5
Line 7: Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
Line 8: ' Code that runs on application startup Line 9: RegisterRoutes(RouteTable.Routes)
I encounter Error: Warning: BC40056: Namespace or type specified in the Imports 'System.Web.Routing' doesn't contain any public member or cannot be found. Make sure the namespace or the type is defined and contains at least one public member. Make sure the imported element name doesn't use any aliases.
Source Error: C:UsersTomAppDataLocalTempTemporary ASP.NET Fileswebsite2fec408f890149acApp_global.asax.2w_ytzx2.0.vb(26) : warning BC40056: Namespace or type specified in the Imports 'System.Web.Routing' doesn't contain any public member or cannot be found. Make sure the namespace or the type is defined and contains at least one public member. Make sure the imported element name doesn't use any aliases. Imports System.Web.Routing. I installed VS 2008 + sp1 on windows 7. and I am using Asp.net Developement server to Run Web Application.
View 2 Replies
Jan 22, 2010
I am implementing URL rewriting and this is not a MVC app, I am using .Net 3.5 Framework here is my simple setup: 1. My Link Page I have a link on my index.aspx page
(notice SEO friendly URL, purpose of Routing) --> <asp:HyperLink ID="HyperLink1" NavigateUrl="~/Category/Engine" runat="server">Engine</asp:HyperLink>
2. Global.asax:
protected void Application_Start(object sender, EventArgs e)
{
RegisterRoutes();
}
private static void RegisterRoutes()
{
System.Web.Routing.RouteTable.Routes.Add("category", new System.Web.Routing.Route("Category/{name}", new CategoryRouteHandler("~/catalog.aspx")));.........
View 5 Replies
Jul 21, 2010
Is it possible to use the Microsoft (or Mono) supplied System.Web.Routing instead of the MonoRail routing stuff when building a Castle MonoRail app for ASP.NET?
View 1 Replies
Jan 27, 2010
I keep getting this error
'IgnoreRoute' is not a member of 'System.Web.Routing.RouteCollection'.
even though I have included the required namespace
system.web.mvc
system.web.routing
View 7 Replies
Jan 22, 2010
I'm using the System.Web.Routing.UrlRoutingModule.
With that I'm writing:
routes.Add(new Route(@"cart/add", new RouteHandler("~/Order/CartAdd.ashx")));
routes.Add(new Route(@"cart/delete", new RouteHandler("~/Order/CartDelete.ashx")));
And I also have one route called:
routes.Add(new Route(@"{*url}", new RouteHandler("~/Error/PageNotFound.ashx")));
But if I go directy to /Order/CartAdd.ashx I never enter the routing. It goes directly to that handler. And if I go to /Order/ I get a 403.14 error.
How do I instead catch those urls with the routing?
View 1 Replies
Jul 20, 2010
I tried everything I could find, but still does not work on IIS routing.
View 2 Replies
Feb 22, 2011
I have a Web application where i have added a reference to a RESTful WCF. I got the WCF url Routing to work in my webapplication by adding Inherits="RestService.Global" to the Web applications Global.asax.
<%@ Application Codebehind="Global.asax.cs" Inherits="RestService.Global" Language="C#" %>
But then i tried to create url Routing for the Web application and it does not work with the Inherits="RestService.Global" in the Global.asax. If i take it away it works fine. Is there a correct way to do this.
View 1 Replies
Jan 31, 2011
I'm trying to create my own CMS and I've gotten a little bit stuck at the stage of URL routing.
I want clean URLs without extensions and I'd like to be able to create and modify them in a web based interface without any messing around with IIS or actual files.
I've seen how to create a static route, but for that I need to go into my Global.asax file and manually add it.I would like to have all of these routes stored in a database so that I can easily modify them later.
Does anyone know how this can be achieved?
Just for extra information, I will be attempting to create a feature so that if a path exists, but is later changed, a 301 redirect is created to the new URL, is this also possible? (My first problem is the main issue, but thought I might ask this as well just in case it makes a difference)
View 2 Replies
Sep 2, 2010
How to handle asp.net mvc routing along with asp.net webform routing. I have merged my mvc app into my existing web application. In my web application i have implement routing as below:
routes.Add("View Product Details", new Route("Product/{City}/{Manufacturer}/{Name}/{ProductID}/{*ProductType}"));
Similarly i have implemented routing in mvc as below
routes.MapRoute("Product Details",
"Product/{City}/{Manufacturer}/{Name}/{ProductID}/{ProductType}",
new
{
controller = "Home",
action = "ProductDetails",
City= UrlParameter.Optional,
Manufacturer= UrlParameter.Optional,
Name= UrlParameter.Optional,
ProductID= UrlParameter.Optional,
ProductType= UrlParameter.Optional
});
How to handle both pages, as one is custom web form while other is asp.net mvc view?
View 1 Replies
Mar 11, 2011
Im building a small project.
I have the url : [URL]
View 6 Replies
Jun 10, 2010
Any one have idea about rewrite url in detailed,want step by step process about rewrite url.
View 3 Replies
Nov 1, 2010
I am using IIS Url rewrite to convert urls from /mypage.aspx?q=value to /page/value.html.
Everything works fine during the first call to the page but on postbacks the url is transformed into
/page/value.html?q=value
when using asp controls such as GridViews, Pagers or Custom Controls.
As a result the Server returns a 404 Error and i can see the corrupted url on the browser's address bar.
This problem was observed when i wanted to change the page of a gridview using a pager.
View 4 Replies
Mar 12, 2011
I'm having a bit of trouble with some strings I am using after rewriting my Url.
My url is here: [URL]
In the above example, Warwickshire is the county and Warwick is the town. I'm referring to these in my query string and am assigning the relevant town/ county to strings in my code behind in order for me to populate labels in page text.
The problem I'm having is that the labels in my page aren't being updated like 'Warwickshire' or 'Warwick, but as 'Warwickshire-Magician' or 'Magician-Warwick'. You can see in the above example that this is making my text not make sense at all. I want to get rid of the 'Magician-' text so I am just left with the town/ county name.
My code behind is as follows:
[Code]....
View 4 Replies
Jan 22, 2011
I've got a sitemap in db with all current url, but some urls has changed so I added a column for old urls so I can redirect if old urls are requested and redirect to the new url.
How can I go about resolving this.
I would like to use 301 status.
UrlRewrite?
View 1 Replies
Jan 11, 2011
I have a problem with URL of my application..................
I want to rewrite my url for security purpose......Like....
suppose my application URl is .....http://localhost/MyApplication/Product.aspx
But i want to change this url with......... http://localhost/MyApplication/MyProducts
View 1 Replies
Jul 17, 2015
I am using UrlRewriter to rewrite url, below code snippets working fine for single page. As you can see page 'ViewPost.aspx' is being used to rewrite url i want to add one more page 'ViewPost2.aspx' how to achieve it.
webconfig file
<rewriter>
<rewrite url="(.+)-(.+).aspx" to="~/ViewPost.aspx?id=$2"/>
</rewriter>
constructing url here
[Code]....
View 1 Replies