November Happy Hour will be moved to Thursday December 5th.

Mari Jørgensen
Sep 27, 2010
  4893
(3 votes)

Did you know of the GetSettingsFromPage() method?

Info-ShieldFinding the start page in an EPiServer solution is usually easy as pie – it is accessible using a static property on the PageReference class.

But if you have several sites sharing database in an Enterprise solution, and you are trying to get hold of the start page from inside a scheduled task, you will soon notice that it’s a bit more tricky.

When the scheduled task is executed you will have no control over which of the sites the PageReference.StartPage will point to.
(In my tests, PageReference.StartPage seem to run in the context of the first site configured in the site section in episerver.config).

This is where the GetSettingsFromPage method becomes handy – if you have a reference to a page on your site, you can find the site settings for that page. When you have the settings, it’s pretty straight forward to find the start page:

   1: Settings settingsFromPage = 
   2:       DataFactory.Instance.GetSettingsFromPage(page.PageLink);
   3: PageReference myStartPage = 
   4:       new PageReference(settingsFromPage.PageStartId);

The ironic part is that I found the solution while searching and finding an old blog post written by myself… (!).

Sep 27, 2010

Comments

Sep 27, 2010 01:46 PM

Thank you for sharing this. Previously I've used my own function which recursively searches for the start page and then uses the Id of the found page to get the right settings.

Sep 27, 2010 07:40 PM

Nice. :)

Joel Abrahamsson
Joel Abrahamsson Sep 28, 2010 08:28 AM

Interesting! Thanks for sharing this.

Sep 29, 2010 12:58 AM

Very nice .I am developing an enterprise sites and was thinking i will have to write some custom code to achieve this .

Please login to comment.
Latest blogs
Optimizely SaaS CMS + Coveo Search Page

Short on time but need a listing feature with filters, pagination, and sorting? Create a fully functional Coveo-powered search page driven by data...

Damian Smutek | Nov 21, 2024 | Syndicated blog

Optimizely SaaS CMS DAM Picker (Interim)

Simplify your Optimizely SaaS CMS workflow with the Interim DAM Picker Chrome extension. Seamlessly integrate your DAM system, streamlining asset...

Andy Blyth | Nov 21, 2024 | Syndicated blog

Optimizely CMS Roadmap

Explore Optimizely CMS's latest roadmap, packed with developer-focused updates. From SaaS speed to Visual Builder enhancements, developer tooling...

Andy Blyth | Nov 21, 2024 | Syndicated blog

Set Default Culture in Optimizely CMS 12

Take control over culture-specific operations like date and time formatting.

Tomas Hensrud Gulla | Nov 15, 2024 | Syndicated blog