Dec 22, 2009
(0 votes)

Page Objects in EPiServer CMS 6

Another new exciting feature in CMS 6 (RC onwards) is the joining of forces between CMS pages (PageData) and objects that can be stored in the Dynamic Data Store, a.k.a. Page Objects.

Of course this can be handled manually by the programmer by storing an object in the DDS and then keeping track of it somehow as Alan demonstrates here.

However, since Alan wrote that blog article we have developed Page Objects so you don’t have to worry about the connection between the page and the DDS object.

Page Objects behave like CMS Page Properties when in comes to versioning and language support. That means that each version of a page gets its own copy of Page Objects. However, under the covers it is quite smart and will only point to its own copy when the version of the object differs from the original, which means better performance.

Another advantage of using Page Objects instead of rolling your own page – DDS hookup is that you get free Import/Export and Mirroring support for the objects.

The new PageObjects property (.NET property) can be found on the PageData class. It behaves like a .NET dictionary so you add and access your objects with the use of a key.

Happy coding and remember, use Page Objects and the DDS responsibly! Reading a massive object graph every time a page in CMS renders will not give you the happiest of experiences (even with caching).

Dec 22, 2009


Please login to comment.
Latest blogs
Optimizely finally releases new and improved list properties!

For years, the Generic PropertyList has been widely used, despite it being unsupported. Today a better option is released!

Tomas Hensrud Gulla | Mar 28, 2023 | Syndicated blog

Official List property support

Introduction Until now users were able to store list properties in three ways: Store simple types (int, string, DateTime, double) as native...

Bartosz Sekula | Mar 28, 2023

New dashboard implemented in CMS UI 12.18.0

As part of the CMS UI 12.18.0 release , a new dashboard has been added as a ‘one stop shop’ to enable editors to access all of their content items,...

Matthew Slim | Mar 28, 2023

How to Merge Anonymous Carts When a Customer Logs In with Optimizely Commerce 14

In e-commerce, it is common for users to browse a site anonymously, adding items to their cart without creating an account. Later, when the user...

Francisco Quintanilla | Mar 27, 2023

How to Write an xUnit Test to Verify Unique Content Type Guids in Content Management

When developing an Optimizely CMS solution, it is important to ensure that each content type has a unique GUID. If two or more content types share...

Minesh Shah (Netcel) | Mar 27, 2023

Extend TinyMCE in Optimizely CMS 12

Since technologies are upgraded to newer versions the ways to extend or override the out-of-the-box functionality are also changed a little bit so...

Ravindra S. Rathore | Mar 27, 2023 | Syndicated blog