我正在尝试使用 ASP.NET (3.5) “路由模块”功能根据 URL 的内容创建自定义页面。
各种文章解释了如何使用 ASP.NET 路由分支到 Web 服务器上的现有页面。
我想做的是使用代码即时创建页面。
我的第一次尝试如下所示:
public class SimpleRouteHandler : IRouteHandler
{
public IHttpHandler GetHttpHandler(RequestContext requestContext)
{
string pageName = requestContext.RouteData.GetRequiredString("PageName");
Page myPage = new Page();
myPage.Response.Write("hello " + pageName);
return myPage;
}
}
但这会抛出一个 HTTPException 说“在这种情况下响应不可用”。在 Response.Write 语句中。
如何进行?
更新:最后,我采用了一种基于 IHttpModule 的方法,结果证明它相当简单。