Поделиться через


Практическое руководство. Выполнение команды SharePoint

Если в расширениях средств SharePoint требуется использовать серверную объектную модель, необходимо создать для вызова API настраиваемую команду SharePoint.После определения команды и развертывания ее с помощью расширения средств SharePoint расширение может выполнять команду для вызова объектной модели сервера SharePoint.Для выполнения команды воспользуйтесь одним из методов ExecuteCommand объекта ISharePointConnection.

Дополнительные сведения о командах SharePoint см. в разделе Вызов объектных моделей SharePoint.

Выполнение команды SharePoint

  1. Получите объект ISharePointConnection в расширении средств SharePoint.Способ получения объекта ISharePointConnection зависит от типа создаваемого расширения.

  2. Вызовите один из методов ExecuteCommand объекта ISharePointConnection.Передайте в первый аргумент метода ExecuteCommand имя команды, которую необходимо выполнить.Если у команды есть настраиваемый параметр, передайте этот параметр во второй аргумент метода ExecuteCommand.

    Для каждой из поддерживаемых сигнатур команды имеется отдельная перегруженная версия метода ExecuteCommand.В следующей таблице перечислены поддерживаемые сигнатуры и соответствующие перегруженные методы.

    Сигнатура команды

    Используемая перегруженная версия ExecuteCommand

    У команды есть только заданный по умолчанию параметр ISharePointCommandContext и отсутствует возвращаемое значение.

    ExecuteCommand(String)

    У команды есть только заданный по умолчанию параметр ISharePointCommandContext и возвращаемое значение.

    ExecuteCommand<TResult>(String)

    У команды есть два параметра (параметр ISharePointCommandContext, используемый по умолчанию, и пользовательский параметр), а также возвращаемое значение.

    ExecuteCommand<T>(String, T)

    У команды есть два параметра и возвращаемое значение.

    ExecuteCommand<T, TResult>(String, T)

Пример

В следующем примере кода показано, как с помощью перегруженной версии метода ExecuteCommand<T>(String, T) вызвать команду Contoso.Commands.UpgradeSolution, описанную в разделе Практическое руководство. Создание команды SharePoint.

Private Sub Execute(ByVal context As IDeploymentContext) _
    Implements IDeploymentStep.Execute
    context.Logger.WriteLine("Upgrading solution: " & solutionName, LogCategory.Status)
    context.Project.SharePointConnection.ExecuteCommand("Contoso.Commands.UpgradeSolution", _
        solutionFullPath)
End Sub
public void Execute(IDeploymentContext context)
{
    context.Logger.WriteLine("Upgrading solution: " + solutionName, LogCategory.Status);
    context.Project.SharePointConnection.ExecuteCommand("Contoso.Commands.UpgradeSolution",
        solutionFullPath);
}

Продемонстрированный в данном примере метод Execute является реализацией метода Execute интерфейса IDeploymentStep на настраиваемом этапе развертывания.Данный код в контексте полного примера см. в раздел Пошаговое руководство. Создание пользовательского шага развертывания для проектов SharePoint.

При вызове метода ExecuteCommand<T>(String, T) необходимо учитывать следующие особенности.

  • Первый параметр определяет команду, которую необходимо вызвать.Эта строка соответствует значению, переданному атрибуту SharePointCommandAttribute при определении команды.

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

  • Этот код не передает команде неявный параметр ISharePointCommandContext.Данный параметр передается в команду автоматически при вызове команды из расширения системы проектов SharePoint или из расширения узла Подключения SharePoint в обозревателе серверов.В решениях других типов, например в мастере шаблонов проектов, реализующем интерфейс Microsoft.VisualStudio.TemplateWizard.IWizard, этот параметр имеет значение null.

Компиляция кода

В этом примере необходима ссылка на сборку Microsoft.VisualStudio.SharePoint.

См. также

Задачи

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

Основные понятия

Вызов объектных моделей SharePoint

Практическое руководство. Создание команды SharePoint