A chamada para os modelos de objeto do SharePoint

Quando você criar extensões para as ferramentas do SharePoint no Visual Studio 2010, talvez você precise chamar as APIs do SharePoint para executar determinadas tarefas. Por exemplo, se você criar uma etapa de implantação personalizada para projetos do SharePoint, talvez você precise chamar as APIs do SharePoint para executar algumas tarefas para implantar soluções.

Microsoft SharePoint Foundation 2010e Microsoft SharePoint Server 2010 fornecer extensões de ferramentas de dois modelos de objeto diferentes que você pode usar no SharePoint: um modelo de objeto do servidor e um modelo de objeto do cliente. Cada modelo de objeto tem vantagens e desvantagens no contexto das extensões de ferramentas do SharePoint.

Para uma visão geral dos modelos de objeto SharePoint, consulte Visão geral do modelo de programação de extensões de ferramentas do SharePoint.

Usando o modelo de objeto do cliente em projetos de extensão

Ao desenvolver uma extensão para as ferramentas do SharePoint, você pode usar o modelo de objeto do cliente em seu projeto como qualquer outro conjunto de APIs gerenciadas. Você pode adicionar referências aos assemblies no modelo de objeto do cliente ao seu projeto, e você pode chamar APIs no modelo de objeto cliente diretamente do seu código.

Entretanto, o modelo de objeto do cliente tem duas desvantagens no contexto das extensões de ferramentas do SharePoint:

  • O modelo de objeto cliente fornece apenas um subconjunto do modelo de objeto do servidor. Se você tiver que usar a funcionalidade do SharePoint que não seja exposta no modelo de objeto cliente, você deve usar o modelo de objeto do servidor.

  • Embora usar o modelo de objeto do cliente em extensões de ferramentas do SharePoint deve funcionar na maioria dos casos, você pode encontrar alguns cenários onde chamadas para o modelo de objeto do cliente não funcionam como esperado. O modelo de objeto do cliente foi projetado para ser usado em aplicativos cliente para chamar os sites do SharePoint em um servidor remoto ou um farm. As ferramentas do SharePoint no Visual Studio funcionam somente com uma instalação local do SharePoint no computador de desenvolvimento. Portanto, quando você usa o modelo de objeto do cliente em uma extensão de ferramentas do SharePoint, você chamar em um site do SharePoint no computador local, que não é como o modelo de objeto do cliente foi projetado para ser usado.

Passo a passo demonstra como usar o modelo de objeto do cliente em uma extensão das ferramentas do SharePoint em Visual Studio 2010, consulte Demonstra Passo a passo: A chamada para o modelo de objeto do cliente do SharePoint em uma extensão do Server Explorer.

Usando o modelo de objeto do servidor em projetos de extensão

O modelo de objeto do servidor é um superconjunto do modelo de objeto cliente. Quando você usa o modelo de objeto do servidor, você pode usar todos os recursos que Microsoft SharePoint Foundation 2010 e Microsoft SharePoint Server 2010 expõe programaticamente.

Extensões de ferramentas do SharePoint podem usar APIs no modelo de objeto de servidor, mas eles não podem chamar as APIs diretamente. O modelo de objeto do servidor pode ser chamado apenas a partir de um processo de 64 bits destina-se a.NET Framework 3.5. No entanto, as extensões de ferramentas de SharePoint requerem a .NET Framework 4 e são executados no processo de Visual Studio de 32 bits. Isso impede que as extensões de ferramentas do SharePoint referenciar os assemblies no modelo de objeto de servidor do SharePoint diretamente.

Se você quiser usar o modelo de objeto do servidor em uma extensão de ferramentas do SharePoint, você deve criar um personalizado comando do SharePoint para chamar a API. Você pode definir o comando do SharePoint em um assembly secundário que pode chamar diretamente no modelo de objeto do servidor. Em seu projeto de extensão, você chamar o comando do SharePoint indiretamente usando o ExecuteCommand o método de um ISharePointConnection objeto.

Para obter mais informações sobre como criar e usar comandos do SharePoint, consulte Como: Criar um comando do SharePoint e Como: Executar um comando do SharePoint. Para obter informações sobre como implantar os comandos do SharePoint, consulte Implantar extensões para as ferramentas do SharePoint em Visual Studio.

Para instruções passo a passo que demonstre como criar e usar os comandos do SharePoint, consulte Demonstra Passo a passo: A criação de uma etapa de implantação personalizado para projetos do SharePoint e Demonstra Passo a passo: Estendendo o Server Explorer para exibir Web Parts.

Noções básicas sobre como SharePoint comandos são executados.

Os assemblies que definem os comandos do SharePoint são carregados em um processo de host de 64 bits, denominado vssphost4.exe. Depois de chamar um comando do SharePoint em uma extensão de ferramentas do SharePoint, o comando é executado pela vssphost4.exe em vez do processo de Visual Studio de 32 bits (devenv. exe). Você pode controlar alguns aspectos de como os comandos do SharePoint são executados, definindo valores no registro. Para obter mais informações, consulte A depuração de extensões para as ferramentas do SharePoint em Visual Studio.

Consulte também

Conceitos

Visão geral do modelo de programação de extensões de ferramentas do SharePoint

Outros recursos

Como: Criar um comando do SharePoint

Como: Executar um comando do SharePoint