Электронный PageID в C # - PullRequest
1 голос
/ 17 июня 2010

Я создаю виджет в Ektron CMS400 и пытаюсь динамически извлечь идентификатор макета страницы, чтобы затем отобразить заголовок.В настоящее время у меня есть этот код:

PageTitle = contentAPI.GetContent(110, Ektron.Cms.Content.EkContent.ContentResultType.Published).Title

Я хотел бы заменить 110 фактической ссылкой на идентификатор текущей страницы (не блока содержимого), который отображается.Muchas gracias!

Ответы [ 3 ]

4 голосов
/ 01 октября 2010

Вы можете сохранить вызов базы данных, не получая контент снова. Макет страницы уже загружен.

/// <summary>
/// Gets the page Basedata.
/// </summary>
/// <returns>The content or null if not on a PageBuilder layout</returns>
private ContentBase GetPageBasedata()
{
    PageBuilder myPage = this.Page as PageBuilder;
    if (myPage != null)
    {
        return myPage.Basedata;
    }

    return null;
}
3 голосов
/ 17 июня 2010

Ух ты, я чувствую себя глупо. Хотя pageid не отображается в URL, я все равно могу ссылаться на него через Request ["pageid"] Ох, беспокойся.

2 голосов
/ 14 декабря 2012

Эта функция возвращает идентификатор страницы электронной страницы.

public long GetPageID()
{
    long pageid = new long();

    Ektron.Cms.PageBuilder.PageBuilder myPage = this.Page as Ektron.Cms.PageBuilder.PageBuilder;
                if (myPage != null)
                {

                    pageid = myPage.Pagedata.pageID;
                }

}
...