Вызов объектных моделей SharePoint
При создании расширений для средств SharePoint в Visual Studio, можно вызвать API SharePoint выполнять определенные задачи.Например, при создании пользовательского шага развертывания проектов SharePoint может возникнуть необходимость вызвать API SharePoint, чтобы выполнить некоторые задачи по развертыванию решений.
В Microsoft SharePoint Foundation 2010 и Microsoft SharePoint Server 2010 реализуются две различные объектные модели, которые можно использовать в расширениях средств SharePoint: серверная объектная модель и клиентская объектная модель.У каждой из объектных моделей имеются свои преимущества и недостатки в контексте расширений средств SharePoint.
Общие сведения об объектных моделях SharePoint см. в разделе Обзор модели программирования расширений средств SharePoint.
Использование в проектах расширений клиентской объектной модели
При разработке расширения для средств SharePoint клиентскую объектную модель можно использовать в проекте наравне с любым другим набором управляемых интерфейсов API.В проект можно добавлять ссылки на сборки клиентской объектной модели, либо можно вызывать API в клиентской объектной модели непосредственно из кода.
Впрочем, у клиентской объектной модели имеется два недостатка в контексте расширений средств SharePoint.
Клиентская объектная модель является только подмножеством серверной объектной модели.Если требуется использовать функции SharePoint, которые не доступны в клиентской объектной модели, следует использовать серверную объектную модель.
Несмотря на то что клиентская объектная модель должна работать в расширениях средств SharePoint в большинстве случаев, возможны ситуации, при которых вызов клиентской объектной модели будет работать некорректно.Клиентская объектная модель предназначена для использования в клиентских приложениях для вызова сайтов SharePoint на удаленном сервере или ферме.Средства SharePoint Visual Studio работают только с локальным экземпляром SharePoint, установленным на компьютере разработчика.Поэтому при использовании клиентской объектной модели в расширении средств SharePoint происходит вызов сайта SharePoint на локальном компьютере, что не является правильным использованием клиентской объектной модели.
Пошаговое руководство, которое демонстрирует, как использовать клиентскую объектную модель в расширении средств SharePoint в Visual Studio Пошаговое руководство. Вызов клиентской объектной модели SharePoint в расширении обозревателя серверов см. в разделе.
Использование в проектах расширений серверной объектной модели
Серверная объектная модель является надмножеством клиентской объектной модели.При использовании серверной объектной модели можно программным образом использовать все функции, доступные в Microsoft SharePoint Foundation 2010 и Microsoft SharePoint Server 2010.
Расширения средств SharePoint могут использовать API в серверной объектной модели, но они не могут вызывать API напрямую.Серверную объектную модель можно вызывать только из 64-разрядных процессов, предназначенных для версии .NET Framework 3.5.Средства расширения SharePoint требуют .NET Framework 4 и работают в 32-разрядном процессе Visual Studio.Это позволяет избежать использования в расширениях средств SharePoint прямых ссылок на сборки серверной объектной модели SharePoint.
Если в расширениях средств SharePoint требуется использовать серверную объектную модель, необходимо создать для вызова API настраиваемую команду SharePoint.Команда SharePoint определяется в дополнительной сборке, которая может напрямую вызывать серверную объектную модель.В проекте расширения команда SharePoint вызывается опосредованно через метод ExecuteCommand объекта ISharePointConnection.
Дополнительные сведения о создании и использовании команд SharePoint см. в разделах Практическое руководство. Создание команды SharePoint и Практическое руководство. Выполнение команды SharePoint.Дополнительные сведения о развертывании команд SharePoint см. в разделе Разработка расширений для средств SharePoint в Visual Studio.
Пошаговые руководства по созданию и использованию команд SharePoint см. в разделах Пошаговое руководство. Создание пользовательского шага развертывания для проектов SharePoint и Пошаговое руководство. Расширение обозревателя сервера, чтобы в нем отображались веб-части.
Принципы выполнения команд SharePoint
Сборки, определяющие команды SharePoint, загружаются в 64-разрядный хост-процесс с именем vssphost4.exe.После вызова команды SharePoint в расширении средств SharePoint команда выполняется в процессе vssphost4.exe, а не 32-разрядном процессе Visual Studio (devenv.exe).Задавая значения в реестре, можно управлять некоторыми принципами выполнения команд SharePoint.Дополнительные сведения см. в разделе Отладка расширений для средств SharePoint в Visual Studio.
См. также
Задачи
Практическое руководство. Выполнение команды SharePoint