Class PageReference
Holds references to pages in the EPiServer system.
Implements
Inherited Members
Namespace: EPiServer.Core
Assembly: EPiServer.dll
Version: 12.0.3Syntax
public class PageReference : ContentReference, IComparable, IReadOnly<ContentReference>, IComparable<ContentReference>, IEquatable<ContentReference>, IReadOnly<PageReference>, IReadOnly
Remarks
Instead of using raw integer IDs, the ID is packaged in a PageReference structure. A page can have several versions and even be located on another physical server. This information is also stored inside the structure.
Constructors
PageReference()
Initializes a new instance of the PageReference class.
Declaration
public PageReference()
PageReference(ContentReference)
Initializes a new instance of the PageReference class from a ContentReference.
Declaration
public PageReference(ContentReference contentLink)
Parameters
Type | Name | Description |
---|---|---|
ContentReference | contentLink |
PageReference(Int32)
Initialize a new PageReference with page id.
Declaration
public PageReference(int pageID)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | pageID | The Page ID to set |
PageReference(Int32, Boolean)
Initialize a new PageReference with page id and any available version. If no version is published the most recently saved will be loaded.
Declaration
public PageReference(int pageID, bool anyVersion)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | pageID | The page id to set |
System.Boolean | anyVersion | This parameter is not used, see remarks |
PageReference(Int32, Int32)
Initialize a new PageReference with page id and working version.
Declaration
public PageReference(int pageID, int workPageID)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | pageID | The page id to set |
System.Int32 | workPageID | The work id to set |
PageReference(Int32, Int32, String)
Initialize a new PageReference with page id, working version and remote site.
Declaration
public PageReference(int pageID, int workPageID, string remoteSite)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | pageID | The page id to set |
System.Int32 | workPageID | The version to set |
System.String | remoteSite | The name of the remote site |
PageReference(Int32, Int32, String, Boolean)
Initialize a new PageReference with page id, working version and remote site.
Declaration
public PageReference(int pageID, int workPageID, string remoteSite, bool anyVersion)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | pageID | The page id to set |
System.Int32 | workPageID | The version to set |
System.String | remoteSite | The name of the remote site |
System.Boolean | anyVersion | This parameter is not used, see remarks |
PageReference(Int32, String)
Initialize a new PageReference with page id and remote site.
Declaration
public PageReference(int pageID, string remoteSite)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | pageID | The page id to set |
System.String | remoteSite | The name of the remote site |
PageReference(String)
Initialize a new PageReference from a string in the format pageID[_workID[_remoteSite]] or - throws EPiServerException on invalid argument
Declaration
public PageReference(string complexReference)
Parameters
Type | Name | Description |
---|---|---|
System.String | complexReference | The string containing page information |
Exceptions
Type | Condition |
---|---|
EPiServerException | Thrown if the string cannot be parsed as a valid PageReference. |
Fields
EmptyReference
Returns an empty PageReference.
Declaration
public static readonly PageReference EmptyReference
Field Value
Type | Description |
---|---|
PageReference |
SelfReference
Returns a PageReference that references the current page.
Declaration
public static readonly PageReference SelfReference
Field Value
Type | Description |
---|---|
PageReference |
Methods
Copy()
Copies this instance.
Declaration
public PageReference Copy()
Returns
Type | Description |
---|---|
PageReference |
CreateWritableClone()
Create a copy of the current object instance that is writable.
Declaration
public PageReference CreateWritableClone()
Returns
Type | Description |
---|---|
PageReference | A new copy of the object. |
Remarks
The cloning is a deep-copy.
IsNullOrEmpty(PageReference)
Determines whether the specified page link is null or empty.
Declaration
public static bool IsNullOrEmpty(PageReference pageLink)
Parameters
Type | Name | Description |
---|---|---|
PageReference | pageLink | The page link. |
Returns
Type | Description |
---|---|
System.Boolean |
|
IsValue(PageReference)
Determines whether the passed PageReference is initiated with a value.
Declaration
public static bool IsValue(PageReference pageLink)
Parameters
Type | Name | Description |
---|---|---|
PageReference | pageLink | The PageReference object to be checked. |
Returns
Type | Description |
---|---|
System.Boolean |
|
Parse(String)
Parse and return a PageReference from a string.
Declaration
public static PageReference Parse(string s)
Parameters
Type | Name | Description |
---|---|---|
System.String | s | The string, in the format pageID[_workID[_remoteSite]]. |
Returns
Type | Description |
---|---|
PageReference | The PageReference, or PageReference.EmptyReference if it's invalid |
Exceptions
Type | Condition |
---|---|
EPiServerException | If string is not parsable as a pagereference |
ParseUrl(String)
Parse a url for PageLink. It is assumed that the url is root-relative, i.e. starts with a "/".
Declaration
public static PageReference ParseUrl(string url)
Parameters
Type | Name | Description |
---|---|---|
System.String | url | Url to parse, assumed to start with "/" |
Returns
Type | Description |
---|---|
PageReference | A PageReference or PageReference.EmptyReference if it's not a valid reference |
Remarks
In order to successfully parse a FURL with ParserUrl, first convert the FURL to an internal url - use the UrlRewriteProvider.ConvertToInternal method.
TryParse(String, out PageReference)
Create a new PageReference from a string in the format pageID[_workID[_remoteSite]]
Declaration
public static bool TryParse(string complexReference, out PageReference result)
Parameters
Type | Name | Description |
---|---|---|
System.String | complexReference | The string containing page information. |
PageReference | result | The PageReference created from the string. |
Returns
Type | Description |
---|---|
System.Boolean | True if parsing was successful. |