如何区分当前页面是否是EPiServer页面
我需要知道当前页面是否是 EpiServer 页面。我需要知道当前页面是否是起始页面,我正在使用以下代码行。
if(PageReference.StartPage.ID == CurrentPage.PageLink.ID)
这在所有 EPiServer 上都能完美运行,但是当我位于非 EPiServer 页面上时,CurrentPage 将返回 StarPage 的值。这意味着我的所有非 EPiServer 页面都被视为 StartPage(当然只是在我的 if 语句中)。
我想到的一个解决方案是首先检查该页面是否是 EPiServer 页面?但不知道该怎么做。我可以获得页面的类或者如何实现这一点?
有什么想法或建议吗?
提前致谢。
I need to know if the current page is an EpiServer page or not. I need to know if the current page is the start page, I am using the following line of code.
if(PageReference.StartPage.ID == CurrentPage.PageLink.ID)
This works perfect on all EPiServers, but when I am on a non EPiServer page then CurrentPage returns values for the StarPage. This means that all my non-EPiServer pages are treated as a StartPage (just in my if statement of course).
One solution I thought of is to check first if the page is an EPiServer page? But don't know how to do this. Can I get the class for a page or how can I achieve this?
Any ideas or suggestions?
Thanks in advance.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您的非 EPiServer 页面只是自定义 aspx 页面吗?如果在这种情况下您遇到问题,可以通过检查页面类型来检查当前页面是否继承自 EPiServer 页面。我相信所有 EPiServer 页面都继承自 PageBase。
Are your non-EPiServer pages just custom aspx pages? If this is the case you have problems with you can check if the current page inherits from an EPiServer page by checking the Page's type. I believe all EPiServer pages inherit from PageBase.
这不是一件好事,但如果您不想将非 EPi 页面连接到单独页面类型的真实页面实例,我想您最好的选择是检查 Request.Url 或文件名正在处理的 ASPX 文件。
It's not a good thing you got goin' but if you don't want to hook up your non EPi-pages to a real page instance of a separate page type I guess your best bet is to check Request.Url or the file name of the ASPX-file being processed.
有一个很棒的有用代码库,可以使 EPiServer 的使用更加轻松。
下载 EPiCode 扩展库并将其添加到您的项目中。
它有一个可以使用的扩展方法 IsEPiServerPage。方法来源为:
There is a fantastic library of useful code to make working with EPiServer easier.
Download the EPiCode extensions library and add it to your project.
This has an extension method IsEPiServerPage which can be used. The method source is: