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

Чтобы создать надстройку, нужно задействовать Visual Studio 2013 или 2015 и проверить доступность элементов SharePoint (см. экран 1).

 

Решения SharePoint доступны
Экран 1. Решения SharePoint доступны

В Visual Studio предусмотрен раздел как для надстроек Office, так и для SharePoint. Шаблоны проекта SharePoint Solutions предназначены для создания программного кода, требующего полного доверия, а Office Add-ins служит исключительно для создания надстроек Microsoft Add-ins. В разделе Apps отображаются два простых проекта: один для Office и один для SharePoint (см. экран 2).

 

Проекты для Office и для SharePoint
Экран 2. Проекты для Office и для SharePoint

Для нашего решения мы выбрали App for SharePoint. После того как вы выбираете проект, запускается мастер, позволяющий назначать определенные свойства, а именно тип надстройки и URL-адрес сайта SharePoint. При проектировании лучше всего использовать сайт SharePoint на основе шаблона Development Site (см. экран 3).

 

Шаблон Development Site
Экран 3. Шаблон Development Site

После того как сайт создан, мы завершаем работу мастера с использованием URL-адреса нашего Development Site. Еще нам нужно выбрать тип надстройки — SharePoint Hosted («Размещено в SharePoint») или Provider Hosted («Размещено у поставщика»). Мы выбрали размещение в SharePoint, так как для этого не требуется дополнительной настройки в локальной среде SharePoint. Если выбрать Provider Hosted, то для работы надстройки потребовалось бы настроить дополнительные компоненты (см. экран 4).

 

Размещение сайта в SharePoint
Экран 4. Размещение сайта в SharePoint

Затем нужно указать версию SharePoint, используемую для надстройки. Этот шаг позволяет добавить к коду решения нужные ссылки на файлы. Для этой надстройки выбираем SharePoint 2013 (см. экран 5).

 

Выбор версии SharePoint
Экран 5. Выбор версии SharePoint

Затем мастер подготавливает основные файлы проекта и решение (см. экран 6).

 

Подготовка основных файлов проекта и решения
Экран 6. Подготовка основных файлов проекта и решения

После того как все решение загружено, оно отображается в структуре, показанной на экране 7.

 

Структура решения
Экран 7. Структура решения

В каждом контейнере можно хранить объекты, начиная со страниц JavaScript и кончая любыми другими необходимыми ресурсами. Поскольку надстройка размещается в SharePoint, в ней не используется управляемый код C# — только код, исполняемый на клиенте, такой как JavaScript или jQuery. SharePoint можно подключить для использования с объектной моделью JavaScript или прямыми вызовами API REST.

Щелкнув правой кнопкой мыши на проекте, мы смогли добавить другие компоненты (см. экран 8).

 

Добавление компонентов
Экран 8. Добавление компонентов

Эти компоненты могут быть добавлены с применением собственной процедуры установки в стиле мастера и файлов определения XML вместо объявления старыми методами. Мастера обеспечивают добавление элементов в файлы Elements.xml для конкретных контейнеров в решении.

Очень важно ознакомиться с базовым кодом. В файле App.js приводится код, который должен быть вызван, когда загружается надстройка или выполняется доступ к default.aspx (см. экран 9).

 

Базовый код
Экран 9. Базовый код

После того как документ загружен, базовый код получает имя текущего зарегистрированного пользователя, извлеченное из контекста в строке:

var user = context.get_web
   ().get_currentUser ();

Этот код вызывается со страницы default.aspx основной надстройки. В процессе вывода он просто отображается в местозаполнитель страницы и в тег HTML DIV с идентификатором сообщения (см. экран 10).

 

Вызов кода
Экран 10. Вызов кода

После того как в решение внесены необходимые изменения, нужно изменить программный код и основные свойства решения.

Прежде всего нужно назначить разрешения. Для этого дважды щелкните файл AppManifest.xml. Будет запущена специальная панель, из которой можно задавать различные параметры.

На главной вкладке можно указать имя, версию, значок, начальную страницу и строки запроса, а также тип надстройки SharePoint (см. экран 11).

 

Указание параметров решения
Экран 11. Указание параметров решения

На второй вкладке пользователи могут установить тип и разрешения (см. экран 12). Следует иметь в виду, что не все разрешения строго необходимы.

 

Установка типа и разрешения
Экран 12. Установка типа и разрешения

После того как разрешения заданы, можно изменить компонент, используемый для активации, и построить решение. Последний шаг — опубликовать надстройку. В результате будут сформированы элементы, показанные на экране 13.

 

Публикация надстройки
Экран 13. Публикация надстройки

После нажатия кнопки Package the app будет сформирован файл. app в папке выходных данных Visual Studio:

{Путь кода}\Sample\bin\Debug\
   app.publish\1.0.0.0

Подготовив файл app, можно выполнить развертывание нажатием кнопки F5 или просто передать файл на сайт разработки в SharePoint. Для этого откройте библиотеку App Packages и передайте файл app (см. экран 14).

 

Передача файла
Экран 14. Передача файла

На данном этапе доступна ссылка New App to Display на домашней странице. С ее помощью вы получите список переданных и готовых к использованию надстроек.

Попросите администратора, ответственного за установку надстройки, подтвердить разрешения (см. экран 15).

 

Подтверждение настройки
Экран 15. Подтверждение настройки

Затем происходит развертывание надстройки; ссылка отображается слева.

Надстройка размещается в доме­не по отдельному URL-адресу. При запуске надстройки загружается страница default.aspx и отображается сообщение инициализации, которое затем меняется на имя пользователя, полученное из кода контекста (см. экран 16).

 

Запуск надстройки
Экран 16. Запуск надстройки

Как мы видим, из готового проекта формируется необходимый базовый набор компонентов, и процесс развертывания очень прост.