I'm working on migrating an existing ASP.NET web site into an MVC project. There are several (60+) pages that I don't want to rewrite just yet, and so I'm wondering if there's a way that I can:
- Move the existing .aspx pages (both markup and code-behind files) into a 'Legacy' folder in my MVC structure
- Set up routing so a call to /foo.aspx (without 'legacy') will actually invoke ~/Legacy/foo.aspx
Effectively, I don't want "legacy" in the URL, but I also don't want the MVC solution to be full of legacy .aspx pages. I accept that this is a very minor point, I'm just curious if it can be done with Routing.
I realize I could do:
routes.MapPageRoute("legacy-foo", "Foo.aspx", "~/Legacy/Foo.aspx");
but I'm wondering if there is a way to do that dynamically (using MVC routes)? eg:
routes.MapPageRoute("legacyroutes", "{filename}.aspx", "~/Legacy/{filename}.aspx");
I guess one way is to use a URL rewriter module, but that seems a bit redundant if routes is capable of doing this natively.