Получить 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();
Спасибо