假设我有一个名为
我想重写请求,以便在用户输入时:
它应该在内部重写为:
(我想这类似于 SO 问题链接的处理方式,其中所有问题都有唯一的 id 和不唯一的标题,并且只有 id 用于生成页面。这样一个问题的旧链接仍然有效即使问题的标题已更改)
我尝试这样做:在Application_BeginRequest
我global.aspx
首先认识到请求的页面是“公共”页面时。然后我做一个
HttpContext.Current.RewritePath("~/public/default.aspx", False)
然后我获取 id以~/public/default.aspx
动态生成公司特定页面(例如公司徽标和名称)。这在我的本地开发环境中运行良好,但在服务器上似乎没有触发 Application_BeginRequest。我猜这是因为请求的文件夹不存在?
我该如何解决这个问题,或者有更好的方法来实现这个行为?