我正在使用VS 2010. 我创建了一个网站,我想在其中重写网址。
我有我的所有文件,即admin和用户文件夹中的aspx文件。
在我的应用程序中,admin创建用户,然后如果用户在地址栏中键入www.domian.com\[username]\
,那么这应该导致我的应用程序中的用户文件夹
我想要这种类型的网址重写。
www.domain.com\\[Dynamic user]\login.aspx
如果可以实现,请建议我。
任何建议都将不胜感激。
答案 0 :(得分:1)
查看这些文章,了解如何使用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
正在包裹IHttpHandler.ProcessRequest
,因此路由发生在Application_BeginRequest
事件之后。
如果您不想使用System.Web.Routing
命名空间,使用UrlRoutingModule
和IRouteHandler
,则IHttpHandler
只有StaticFileHandler
或{{1} (ASP.NET WebForm'aspx'IHttpHandler)。
至少你可以创建一个简单的ASP.NET WebHandler System.Web.Page
文件(最简单的IHttpHandler)。
所以你说实施......
值得注意的是旧版.NET框架和IIS上的ASP.NET< 7 无法重写任何内容。阅读“IIS ASP.NET集成管道”。
也许你的问题的最佳答案可能是“没有建设性”,“重复”或只是说使用搜索,做 google 并说“asp.net url routing”计算器”。