可以这样做吗?怎么样?
我尝试了以下但没有成功:
方法1 使用BuildManager.CreateInstanceFromVirtualPath
- 在发布后无效。 (我认为它失败了,因为我使用强名称汇编预编译,不确定)。
Method2 ,使用以下代码:
Page page = new SchedulerTest(); // An ASPX Page class (note: CodeBehind)
page.AppRelativeVirtualPath =
context.Request.AppRelativeCurrentExecutionFilePath;
page.ProcessRequest(context);
找到here - 无法正常工作,因为我不知道页面类名称 在运行时。
答案 0 :(得分:0)
好的,这就是我的想法。
a)为什么在运行之前你不知道类的名称?你如何弄清楚这个类名是什么?如果你可以计算出这种关系,那么你可以使用反射创建一个页面实例,然后使用它。
b)你真正想要实现的目标是什么?如果您尝试根据某些条件(查询字符串或其他内容)将请求路由到另一个请求,则可以使用HttpModule并重写路径。我很难看到你可能会尝试做什么。通过这种方式,您可以再次使用虚拟路径。