我正在使用 VS 2010。我创建了一个网站,我想在其中进行 url 重写。
我有我的所有文件,即管理员和用户文件夹中的 aspx 文件。
在我的应用程序中,管理员创建用户,然后如果用户www.domian.com\[username]\
在地址栏中键入,那么这应该会导致我的应用程序中的用户文件夹
我想要这种类型的 url 重写。
www.domain.com\\[Dynamic user]\login.aspx
请建议我这是否可以实现。
任何建议将不胜感激。
我正在使用 VS 2010。我创建了一个网站,我想在其中进行 url 重写。
我有我的所有文件,即管理员和用户文件夹中的 aspx 文件。
在我的应用程序中,管理员创建用户,然后如果用户www.domian.com\[username]\
在地址栏中键入,那么这应该会导致我的应用程序中的用户文件夹
我想要这种类型的 url 重写。
www.domain.com\\[Dynamic user]\login.aspx
请建议我这是否可以实现。
任何建议将不胜感激。
查看这些文章,了解如何使用 UrlRoutingModule:
您可以使用命名空间中定义的内置路由来使用控制器System.Web.Routing
,也可以构建自己的IRouteHandler : IHttpHandler
实现类。
基本上,它们也被定义的第一个地方是处理事件Global.asax
的派生System.Web.HttpApplication
类。Application_Start
void Application_Start(object sender, EventArgs e)
{
// Code that runs on application startup
RouteTable.Routes.MapPageRoute("routeName",
"{controller}/{action}", "~/Store/View.aspx");
}
因为IRouteHandler
是 wrapping IHttpHandler.ProcessRequest
,所以路由发生在Application_BeginRequest
事件之后。
如果你不想使用System.Web.Routing
命名空间,使用UrlRoutingModule
and IRouteHandler
,你只有IHttpHandler
s like StaticFileHandler
or System.Web.Page
(ASP.NET WebForm 'aspx' IHttpHandler)。
至少您可以创建一个简单的 ASP.NET WebHandler.ashx
文件(最简单的 IHttpHandler)。
所以你说实施...
值得注意的是,旧 .NET 框架和 IIS < 7 上的 ASP.NET无法重写任何内容。阅读“IIS ASP.NET 集成管道”。
也许您的问题的最佳答案可能是“不具建设性”、“重复”或简单地说使用搜索,谷歌并说“asp.net url routing stackoverflow”。