static PageBase InstantiatePage(HttpContext context, string virtualPath, Page pageNode)
{
PageBase page = null;
Page originalCurrentPage = PortalContext.Current.Page;
string originalPath = context.Request.Path;
try
{
PortalContext.Current.Page = pageNode;
context.RewritePath(virtualPath);
page = (PageBase)BuildManager.CreateInstanceFromVirtualPath(virtualPath, typeof(PageBase));
}
finally
{
context.RewritePath(originalPath);
PortalContext.Current.Page = originalCurrentPage;
}
return page;
}