Internal URL's in EPiServer are stored in the database using a format called Permanent Links. Property types are responsible to transform a URL from a permanent link to a standard template link upon access from user code, and of course the other way around before content is stored to the database.

For more information regarding permanent links in EPiServer, please read the article Link Management in EPiServer CMS Under the Hood.


The interface EPiServer.Core.Transfer.IReferenceMap on your PropertyData object tells EPiServer that we need to handle Permanent Links. The Permanent Link Store handles all conversion between permanent links and dynamic links. This API can be accessed using the EPiServer.Web.PermanentLinkUtility.
EPiServer.Web.PermanentLinkMapStore and EPiServer.Web.PermanentLinkMap are underlying components in the PermanentLink architecture and under normal circumstances you do not need to access them directly.

Page Links

Permanent links to pages consists of the GUID associated with a page, also available as the property PageGUID.

Format: ~/link/PAGEGUID.extension?EXTRAINFO


File links

Permanent links to files are handled similar to pages but with one significant difference. Because files are stored on disk itís up to the each Virtual Path Provider (for further reference on Virtual Path Providers in EPiServer, please see the Virtual Path Providers tech note on EPiServer World and the article File System and VPPs in this SDK.) to associate a GUID with a file. The default provider for files in EPiServer use a technology where helper files and folders are created and store this metadata when linking to a file. This means that you should never rename files and folders using Windows Explorer but you may upload new files.

Format: ~/link/FILEGUID.extension