2011-03-30 102 views

回答

7

您需要检查PageTypeNamePageTypeID特性,如:

if(CurrentPage.PageTypeName == "StartPage") 
    // Do something 

检查参考:http://sdk.episerver.com/library/cms5/html/AllMembers_T_EPiServer_Core_PageData.htm

GetType()方法宣布System.Object并返回System.Type为物体。在.NET Framework中,所有类型都可用,因为所有类型都从System.Object继承。

+0

感谢您的答复,好知道其中的差别。 – tif 2011-04-01 06:34:13

+0

我有类似的问题。我有一个包含EPiServer页面和非EpiServer页面的站点,问题是,在Non-EpiServer页面上检查类型时,“CurrentPage”返回的值与我在起始页面中时一样。我需要检查页面是否是EpiServer页面。谢谢 – tif 2011-04-28 13:00:39

+2

您的EPiServer页面可能会继承某个基类,而其他页面不会,对不对?只要检查页面中的if(这是MyEpiPageBaseClass)',你应该没问题。 – 2011-04-29 07:17:54

3

CurrentPage.PageTypeName给你如果你使用的页面类型生成器,你还可以使用PageTypeResolver类的网页类型

+0

感谢Mari的回复 – tif 2011-04-01 06:33:20

2

名。

4

与页面类型构建强类型的类,你可以使用C#is关键字

e.g

if (CurrentPage is SomeStronglyTypeClass)