отображать ограниченное количество элементов в sharepoint - PullRequest
0 голосов
/ 04 января 2012

В приведенном ниже коде я отображаю список всех сайтов в веб-приложении.Я хотел бы показать только несколько сайтов, например, 5 из 100, и ниже списка я хотел бы показать ссылку, которая перенаправляет пользователя на страницу, где он / она может просматривать все сайты.1002 * Каков наилучший способ достичь этого?Кто-нибудь может дать мне какой-нибудь код?

Большое спасибо.

 public static WorkspacesList GetAll()
    {
        WorkspacesList allWorkspaces = new WorkspacesList();

        using (SPSite site = new SPSite("http://sng3sp6d:8888/"))
        {

            SPWebApplication webApplication = site.WebApplication;

            foreach (SPSite siteCollection in webApplication.Sites)
            {
                try
                {
                    SPWeb website = siteCollection.RootWeb;

                    if (website.DoesUserHavePermissions(SPBasePermissions.ViewListItems))
                    {
                        allWorkspaces.Add(new Workspace(website.Title, website.Url, website.Created));
                    }

                }
                finally
                {
                    if (siteCollection != null)
                        siteCollection.Dispose();
                }
            }
        }

        allWorkspaces.Reverse();
        return allWorkspaces;
    }

Ответы [ 3 ]

0 голосов
/ 04 января 2012

Отображаете ли вы эту информацию в WP, тогда у вас может быть настраиваемое свойство, показывающее, сколько элементов вы хотите отобразить - т.е. 5

. Несмотря на ForEach, вы можете использовать For и ограничить его 5 строками,При нажатии на заголовок вы можете перенаправить на другую страницу>, на которой тот же WP настроен для отображения всех элементов.

Sandeep

0 голосов
/ 05 января 2012

По вопросам производительности; Я бы предложил использовать SPSiteDataQuery, и вы можете ограничить количество элементов, которые вы получаете в запросе.

Взгляните на:

SPSiteDataQuery и RowLimit свойство

0 голосов
/ 04 января 2012

Самый простой способ сделать это - поместить список семейств сайтов в список и использовать стандартную веб-часть для отображения семейств сайтов, к которым у пользователя есть доступ.Затем вы можете ограничить количество элементов, которые они видят за один раз.

Вы также можете создать таблицу динамически с 5 строками в ней и затем просто заполнить эту таблицу первыми 5 семействами сайтов.Добавьте кнопку «Просмотреть все», которая приведет вас на страницу со следующим:

Создайте список sharepoint, содержащий ваши результаты - запишите все свои результаты в список, затем добавьте список на страницу веб-части,давайте назовем эту страницу «/sites/mysite/siteassets/viewsites.aspx".

Код кнопки« Просмотреть все », чтобы перенести пользователя на новую страницу.Вы можете добавить идентификатор пользователя в виде строки запроса, а затем отфильтровать страницу «viewsites» по идентификатору пользователя.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...