2013-09-06 12 views
6

Muszę powiązać LinkURL strony Blogu za pomocą przycisku łącza na stronie początkowej. To, co zrobiłem, to fakt, że znalazłem Identyfikator strony i uzyskałem odniesienie do strony za jego pomocą.EpiServer, jak uzyskać URL linku określonej strony?

PageReference BlogPageReference = new PageReference(21); 

PageData BlogPage = GetPage(BlogPageReference); 

var url = BlogPage.LinkURL; 

Jest to całkiem proste, ale nie jestem szczęśliwy, że identyfikator strony jest zakodowany. Czy jest lepszy sposób na zrobienie tego, na przykład uzyskanie nazwy strony według strony? lub w inny sposób?

góry dzięki :)

+0

Myślę, że odpowiedź Andreasa powinna zostać przyjęta. :) –

Odpowiedz

9

Chciałbym stworzyć obiekt na stronie startowej typu „Strona”, co oznacza, że ​​nieruchomość będzie miał typ PageReference. Wtedy nie jest już na stałe.

Powszechne jest również przenoszenie takich właściwości "ustawień" na osobny typ strony Ustawienia, który sam jest połączony przez właściwość z katalogu głównego lub strony początkowej (które są stałymi).

Im piszę z pamięci, więc przepraszam za błędy w kodzie.

var startPage = DataFactory.Instance.Get<StartPage>(PageReference.StartPage); 
var settingsPage = DataFactory.Instance.Get<SettingsPage>(startPage.SettingsPage); 
var blogPageRef = settingsPage.BlogPage; 

Gdzie SettingsPage i BlogPage są zdefiniowane

public virtual PageReference xxxPage {get; set; } 

w swojej klasie typu strony.

Powiązane problemy