4

好的,这似乎是一件非常简单的事情。但我正在尝试使用 Sitefinity 4 Fluent API 来查询页面并填充超链接的 Text/NavigationUrl 属性。文本被很好地填充 - 但很难从页面中获取 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 显示页面标题)。在第三行,我得到一个“对象引用未设置为对象的实例”。错误...仅供参考 PageId 是对页面的 Guid 引用。

任何帮助将不胜感激。

4

1 回答 1

8

发现问题。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();

谢谢

于 2011-05-22T13:38:23.543 回答