I think I've run into a showstopper bug using this rewrite approach. The problem exists when trying to do a postback on a rewritten page.
If I rewrite /testing to /sites/testing.aspx, the form wants to postback to /testing.aspx. In .NET 2.0, you can't modify the action attribute, though that's permissible in 3.5.
If I try to modify the control that's posting back by changing it's PostBackUrl pproperty, then ASP.NET doesn't treat it as a postback, but rather a form post, so my command_click code never gets executed.
I browsed the related forum posts on Helicon's site, but didn't find anything that looked like a solution (most of the solutions wouldn't work with AJAX). However, I did find a blog by Scott Guthrie that talks about this. He covers the scenario near the end, under "Handling ASP.NET PostBacks with URL Rewriting"
The trick is that he uses a control adaptor in the App_Browsers to overwrite the form action on the client. He provides a sample that uses a different URL Rewriter, that's implemented as an HttpModule (which would be better for me, since I'm not sure that Mosso is going to let me install an ISAPI filter...
The blog is at:
His sample can be downloaded at:
I haven't tried it for my particular scenario yet, but it's looking good. The rewrite rules go in the web.config, and the rewriter is just a DLL in the application bin. This would be great for my scenario...but I'm not sure if it's going to work for extensionless URLs in .NET 2.0...
Anyway, I'll let everyone know how this turns out.