Получить URL страницы, используя Sitefinity 4 Fluent API

Хорошо, это кажется довольно простой вещью. Но я пытаюсь использовать Sitefinity 4 Fluent API для запроса страницы и заполнения свойств Text/NavigationUrl для HyperLink. Текст заполняется нормально - но ему трудно получить URL со страницы.

        PageNode page = App.WorkWith().Page(PageId).Get();
        PageLink.Text = page.Title;
        PageLink.NavigateUrl = page.Urls.Where<PageUrlData>(pU => pU.RedirectToDefault == false).FirstOrDefault<PageUrlData>().Url;

Первая и вторая строки работают нормально (PageLink.Text показывает заголовок страницы). В третьей строке я получаю "Ссылка на объект не установлена ​​для экземпляра объекта". ошибка... FYI PageId является ссылкой Guid на страницу.

Любая помощь будет принята с благодарностью.

1 ответ

Решение

Нашел проблему. PageNode требует "Telerik.Sitefinity.Pages.Model" в качестве ссылки. Я имел это, но позже обнаружил, что вы также должны включить "Telerik.Sitefinity.Modules.Pages".

Это добавляет новый метод к моему поясу, который я использовал ниже (getFullUrl):

    PageNode page = App.WorkWith().Page(PageId).Get();
    PageLink.Text = page.Title;
    PageLink.NavigateUrl = page.GetFullUrl();

Спасибо

Другие вопросы по тегам