Инфраструктура веб-частей в SharePoint Foundation

Дата последнего изменения: 14 апреля 2010 г.

Применимо к: SharePoint Foundation 2010

Веб-части — это серверные элементы управления, выполняемые в контексте страниц веб-сайтов Microsoft SharePoint Foundation. Их можно использовать для настройки пользовательского интерфейса и редактирования контента страницы веб-сайта. SharePoint Foundation содержит веб-части по умолчанию и поддерживает создание настраиваемых веб-частей. В SharePoint Foundation поддерживается два типа веб-частей. Они называются веб-частями SharePoint и веб-частями ASP.NET. Веб-части ASP.NET используют базовый класс System.Web.UI.WebControls.WebParts.WebPart, а веб-части SharePoint используют базовый класс Microsoft.SharePoint.WebPartPages.WebPart. Поддерживается оба типа веб-частей, но для всех новых проектов рекомендуется использовать веб-части ASP.NET.

Объектная модель веб-частей

Веб-части в SharePoint Foundation основаны на инфраструктуре веб-частей Microsoft ASP.NET. Чтобы создать веб-части для приложения, работающего с SharePoint Foundation, нужно создать настраиваемые веб-части в рамках инфраструктуры веб-частей ASP.NET. Но иногда, в очень редких случаях, разработчику может понадобиться создать веб-части, поддерживающие функции SharePoint Foundation, недоступные в инфраструктуре веб-частей ASP.NET.

Веб-части ASP.NET

Инфраструктура веб-частей ASP.NET основана на классе WebPartManager, который управляет жизненным циклом экземпляров веб-частей во время выполнения.

Каждая страница ASP.NET, использующая элементы управления веб-частей, для поддержки личных настроек должна содержать следующие объекты:

  • только один объект WebPartManager, который отслеживает, какие веб-части были добавлены в каждую область, и хранит и получает данные о настройке и персонализации каждой веб-части;

  • один или более объектов WebPartZone, в которые помещаются веб-части.

Для выполнения веб-частей SharePoint Foundation в приложении ASP.NET необходимо создать ASPX-страницу, содержащую только один экземпляр элемента управления WebPartManager и один или более элементов управления WebPartZone. Элемент управления WebPartManager отвечает за сериализацию данных веб-частей, а также за хранение и получение этих данных из базы данных.

Элементы управления SPWebPartManager и WebPartZone управляют сериализацией данных, связанных с веб-частями, в соответствующей базе данных контента SharePoint Foundation. Чтобы иметь возможность сохранять данные, веб-части ASP.NET должны располагаться на странице вместе с этими двумя элементами управления.

Поскольку эти элементы управления SharePoint Foundation требуются на страницах, содержащих веб-части, нельзя просто скопировать страницу ASP.NET на сайт SharePoint Foundation. Для перемещения веб-частей ASP.NET из приложения ASP.NET в приложение SharePoint Foundation необходимо экспортировать их из ASP.NET в виде WEBPART-файлов, а затем импортировать на веб-сайт SharePoint Foundation.

Веб-части SharePoint

Инфраструктура веб-частей SharePoint Foundation использует многие элементы из набора элементов управления ASP.NET и представляет ряд собственных элементов управления, наследуемых от базовых классов, предоставляемых в наборе элементов управления веб-частей ASP.NET.

Например, в страницах веб-сайта для SharePoint Foundation не используется стандартный класс ASP.NET WebPartManager. Вместо него в них используется класс SPWebPartManager в SharePoint Foundation, наследуемый от WebPartManager из набора ASP.NET.

ПримечаниеПримечание

Главная страница по умолчанию, предоставляемая SharePoint Foundation, содержит экземпляр класса SPWebPartManager, поэтому этот элемент управления автоматически добавляется на все страницы контента SharePoint Foundation.

Аналогично, в веб-частей для веб-сайта SharePoint Foundation также используется класс WebPartZone из SharePoint Foundation, наследуемый от класса WebPartZone из набора ASP.NET.

Использование класса, производного от класса веб-частей SharePoint

Лишь изредка может понадобиться создавать веб-части, поддерживающие функции SharePoint Foundation, но недоступные в инфраструктуре веб-частей ASP.NET. В этих случаях можно создать класс, наследуемый от базового класса SharePoint WebPart. Такие веб-части называются веб-частями на базе SharePoint и могут использоваться только на веб-сайтах SharePoint Foundation.

Далее приведен список функций, предоставляемых исключительно классом SharePoint WebPart:

  • межстраничные подключения;

  • подключения между веб-частями, находящимися вне области веб-частей;

  • клиентские подключения (компонент служб страницы веб-частей);

  • инфраструктура кэширования данных, позволяющая кэширование в базе данных контента.

Другим вариантом, когда может понадобиться наследование от класса WebPart, может быть создание новых версий веб-частей. Если исходная веб-часть наследовалась от класса WebPart и требуется обновить экземпляры этой веб-части до новой версии, то новая версия должна также наследоваться от класса SharePoint WebPart.

См. также

Ссылка

Microsoft.SharePoint.WebPartPages

Другие ресурсы

Web Parts Overview

Developing Web Parts in SharePoint Foundation

Обзор набора элементов управления веб-частей ASP.NET