Практическое руководство. Создание веб-части для размещения внешнего приложения
Дата последнего изменения: 1 сентября 2011 г.
Применимо к: SharePoint Foundation 2010
В этом разделе приводится обзор создания веб-части, в которой размещается приложение, отличное от SharePoint, возможно, расположенное в домене, отличающемся от домена веб-приложения Microsoft SharePoint Foundation, в котором используется веб-часть. Обычно веб-часть имеет изменяемые свойства, в этом случае также потребуется создать инструментальную панель для веб-части.
Создание веб-части
Создайте пустой проект SharePoint в Microsoft Visual Studio 2010.
Добавьте в проект веб-часть и откройте исходный файл кода cs или vb.
Добавьте оператор using (Imports в Visual Basic) для пространства имен Microsoft.SharePoint.WebPartPages.
Задайте наследование класса веб-части от ClientApplicationWebPartBase вместо используемого по умолчанию класса WebPart.
При необходимости переопределите конструктор класса, а также методы CreateChildControls и RenderContents.
Если требуется реализовать работу веб-части с пользовательским поставщиком внешних приложений, в методе CreateChildControls необходимо реализовать следующее поведение:
Вызов унаследованного метода GetExternalApplicationRequestResult().
Вызов унаследованного метода GetInitParams().
Вызовите метод GetContentControl(String) объекта SPExternalApplicationRequestResult, который возвращается при вызове метода GetExternalApplicationRequestResult(), и передайте ему в качестве параметра объект String, возвращаемый при вызове метода GetInitParams().
Если пользовательский поставщик внешних приложений не создан и не зарегистрирован в веб-службе, содержащей веб-приложение, в этой последовательности вызовов не выполняются никакие действия.
Если XML-файл внешнего приложения веб-части содержит пользовательские свойства, необходимо создать пользовательский поставщик внешних приложений для их чтения. В процессе создания пользовательского поставщика следует реализовать метод OnApplicationWebPartCreateChildControls(SPExternalApplicationRequestProperties). Дополнительные сведения о создании настраиваемого поставщика внешних приложений см. в статье Создание собственного поставщика внешних приложений.
Если веб-часть содержит изменяемые свойства, следует реализовать унаследованный метод CreateEditorParts() для создания объекта класса инструментальной части. Дополнительные сведения об этом классе см. в описании процедуры Создание инструментальной части.
Создание инструментальной части
Добавьте еще одну веб-часть в проект.
Задайте наследование класса от EditorPart вместо используемого по умолчанию класса WebPart.
Добавьте реализацию метода SyncChanges() для считывания изменяемых свойств из веб-части в редактируемые элементы управления инструментальной части.
Добавьте реализацию метода ApplyChanges() для считывания значений из элементов управления инструментальной части и их присваивания свойствам веб-части.
При необходимости переопределите методы CreateChildControls, RenderContents и другие члены.