如何得到页面自身对象 高手请指教小弟。感激!!!

zhu18 2008-11-07 10:41:42
比如APage实现了IAPage接口
public partial class APage : System.Web.UI.Page,IAPage
{
}

我在什么地方可以把APage实例化或如何得到这个页面对象?
我主要是想让接口IAPage给页面作个标记,这样我就可以区别它和别的页面了
如:if(objAPage is IAPage)
{
//该页面实现了IAPage接口
}

请各位大虾帮帮小弟! 谢谢。
困扰我2天了
...全文
143 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhu18 2008-11-08
  • 打赏
  • 举报
回复
谢谢大家了 再次感谢 zorou_fatal
zhu18 2008-11-08
  • 打赏
  • 举报
回复
呵呵 不管怎样 学到了东西

BuildManager.CreateInstanceFromVirtualPath 好东西 原来还可以这样得到实例啊
bingdian37 2008-11-08
  • 打赏
  • 举报
回复
[Quote=引用楼主 zhu18 的帖子:]
比如APage实现了IAPage接口
public partial class APage : System.Web.UI.Page,IAPage
{
}

我在什么地方可以把APage实例化或如何得到这个页面对象?
我主要是想让接口IAPage给页面作个标记,这样我就可以区别它和别的页面了
如:if(objAPage is IAPage)
{
//该页面实现了IAPage接口
}

请各位大虾帮帮小弟! 谢谢。
困扰我2天了
[/Quote]

楼主思路是不太合理的
wanghui0380 2008-11-08
  • 打赏
  • 举报
回复
说实话不知道lz想干啥
直接在接口里实现不就是了

接口 IAPage
{
void show();
}

public partial class APage : System.Web.UI.Page,IAPage
{

//实现IAPage接口
public show()
{
Response.Write("本页实现IAPage接口")
}
Page_Load() //呵呵页面加载是这个吧,有段时间没玩web了,记不清楚了
{
if(this is IAPage)
{
IApage _ipage=(IApage)this;
_ipage.show();
}
}
}
tcdyx 2008-11-08
  • 打赏
  • 举报
回复
base.属性名,或者方法名
zorou_fatal 2008-11-08
  • 打赏
  • 举报
回复
HttpHandler里处理页面对象:

public class TestHandler : System.Web.IHttpHandler
{

public bool IsReusable
{
get { return false; }
}

public void ProcessRequest(System.Web.HttpContext context)
{

//Page page = BuildManager.CreateInstanceFromVirtualPath("/weblog/schedulerTest.aspx", typeof(SchedulerTest) ) as Page;
//BuildManager.GetVirtualPathDependencies("/weblog/testpage.axd");

Page page = new SchedulerTest(); // An ASPX Page class (note: CodeBehind)
page.AppRelativeVirtualPath = context.Request.AppRelativeCurrentExecutionFilePath;
page.ProcessRequest(context);

}
}

楼主的需求很奇怪,按说一般处理page都是在module里搞的。
zorou_fatal 2008-11-07
  • 打赏
  • 举报
回复
Check this

http://www.cnblogs.com/zxjyuan/archive/2008/08/20/1271984.html
zorou_fatal 2008-11-07
  • 打赏
  • 举报
回复
HttpContext.Current.Handler as Page
zhu18 2008-11-07
  • 打赏
  • 举报
回复
谁可以帮我啊
我2天工作日就干这事情了
gengwanshanreally 2008-11-07
  • 打赏
  • 举报
回复
up!
wackyboy 2008-11-07
  • 打赏
  • 举报
回复
this
zhu18 2008-11-07
  • 打赏
  • 举报
回复
没有人帮我吗?
帮帮我啊
clear_shadow 2008-11-07
  • 打赏
  • 举报
回复
me. ???
zhu18 2008-11-07
  • 打赏
  • 举报
回复
我想在HttpHandler中截取请求 判断那些页面是实现IAPage接口 并对这些页面做相应的操作
分享大哥 2008-11-07
  • 打赏
  • 举报
回复
奇怪的问题
zhu18 2008-11-07
  • 打赏
  • 举报
回复
帮帮忙啊 各位
zhu18 2008-11-07
  • 打赏
  • 举报
回复
不行啊在HttpHandler中 感觉怎么都得不到页面对象

在HttpModule中application_AcquireRequestState()
就可以为什么啊

我看了些资料application_AcquireRequestState()时HttpHandler已经建立了 意味着他们应该是一样的啊
zorou_fatal 2008-11-07
  • 打赏
  • 举报
回复
public void ProcessRequest(System.Web.HttpContext context)
{
if(System.Web.HttpContext.Current.Handler is IRedevelopRunTimePage)
{
...
}


}
zhu18 2008-11-07
  • 打赏
  • 举报
回复
页面好像不可以
页面类名称 p = new 页面类名称();
这种方式得到对象把?

vs2005 都不知道页面是哪个命空间的,点都点不出来。
liuhelong 2008-11-07
  • 打赏
  • 举报
回复


List<object> pages=new List<object>();
APage ap=null;

pages.Add(new APage());
pages.Add(new Page());
pages.Add(new APage());

foreach(object obj in pages)
{
ap=obj as APage;
if(ap!=null)
{
// 处理代码
}
}


顺手写的,不知道对不对
加载更多回复(2)

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧