A importação de itens de um Site do SharePoint existente

O modelo de projeto do pacote de solução do SharePoint de importação lhe permite reutilizar elementos como, por exemplo, tipos de conteúdo e campos de sites do SharePoint existentes em uma nova Visual Studio solução do SharePoint. Embora você possa executar soluções mais importadas sem modificação, existem certas restrições e questões a considerar, especialmente se você modificar quaisquer itens após importá-los.

ObservaçãoObservação

Para importar fluxos de trabalho reutilizáveis, use o modelo de projeto de fluxo de trabalho reutilizáveis importar. Para obter mais informações, consulte Diretrizes para a importação de fluxos de trabalho reutilizáveis.

Soluções do SharePoint com suporte

Visual Studio 2010com suporte completo para a importação de soluções criadas no SharePoint Foundation 2010 e SharePoint Server 2010.

Visual Studio 2010não suporta a importação de soluções criadas nos seguintes aplicativos:

  • Windows SharePoint Services 3.0

  • Microsoft Office SharePoint Server 2007

  • Visual Studio 2008

  • Microsoft SharePoint Designer 2007

  • Visual Studio 2010

    ObservaçãoObservação

    Em outras palavras, Visual Studio 2010 não oferece suporte a importação do SharePoint para soluções criadas no Visual Studio 2010.

Embora freqüentemente com êxito, você pode importar soluções criadas por esses aplicativos, essa funcionalidade não é testou e não suportada.

Restrições de importação do item

Embora a maioria dos itens do SharePoint podem ser importados de um arquivo. wsp existente, os seguintes itens não são suportados e podem exigir modificações para funcionar corretamente:

  • Entidades BDC

  • Elementos de associação de fluxo de trabalho de código.

  • Fluxos de trabalho de código

  • Visual Web parts (. ascx)

  • Serviços da Web (. asmx)

  • Ligações do tipo de conteúdo.

  • Receptores de evento

  • Definições de lista (modelos)

  • Definições de site

Quando você exporta uma solução de SharePoint Foundation 2010 ou SharePoint Server 2010, esses itens são excluídos automaticamente do arquivo. wsp. No entanto, outros arquivos. wsp gerados a partir de ferramentas sem suporte podem conter esses itens. (Consulte "Soluções do SharePoint com suporte" anteriormente neste tópico).

O que acontece quando você importar uma solução

Quando você importar uma solução com o modelo Importar pacote de solução do SharePoint, Visual Studio copia todo o conteúdo do arquivo. wsp e tenta reconciliar e manter tantos associações e referências entre os elementos importados e seus arquivos como possível.

Copiar de todos os itens importados para as pastas correspondentes em Solution Explorer. Por exemplo, os tipos de conteúdo aparecem na pasta tipos de conteúdo e instâncias de lista são exibidos em instâncias da lista de. Além disso, os arquivos associados a um item importado são copiados para a pasta do item. Por exemplo, uma instância de lista importada inclui módulos, formulários e páginas ASPX.

Itens dependentes

Se você selecionar um item em que o Assistente de pacote de solução do SharePoint de importação, mas não seus itens dependentes, uma caixa de mensagem informa que os itens dependentes também devem ser selecionados antes de importar.

Quais são os recursos?

Os usuários do SharePoint Designer podem ver arquivos inesperados, chamados recursos, aparecem em suas soluções importadas em Solution Explorer. Embora os recursos existiam na solução do SharePoint Designer, eles foram ocultados. Recursos agora são visíveis no Visual Studio.

Recursos são contêineres para itens do SharePoint. Cada recurso mantém uma referência a cada item, como, por exemplo, tipos de conteúdo e definições de lista que ele contém. Quando você importa a sua solução, Visual Studio configura os recursos para todos os elementos importados e tenta manter as relações de elemento de recurso para os arquivos. Todos os arquivos cujas referências não podem ser resolvidas são colocados na Arquivos importados de outros pasta.

Para obter mais informações sobre recursos, consulte Desenvolvimento de soluções do SharePoint e Trabalhando com recursos.

Casos especiais de manipulação.

Em alguns casos, o Visual Studio não pode reconciliar um item com seus arquivos dependentes. Os arquivos que Visual Studio não foi possível resolver aparecem sob a pasta Arquivos importados de outros. Além disso, suas DeploymentType propriedades são definidas como NoDeployment para que eles não são implantados com a solução.

Por exemplo, se você importar a definição de lista ExpenseForms, uma definição de lista com esse nome aparece sob o as definições de lista pasta na Solution Explorer juntamente com seus arquivos elements e Schema. XML. No entanto, seus formulários associados de ASPX e o HTML podem ser colocados em uma pasta chamada ExpenseForms sob o Arquivos importados de outros pasta. Para concluir a importação, movam esses arquivos de definição de lista de ExpenseForms em Solution Explorer e altere o DeploymentType propriedade para cada arquivo de NoDeployment para ElementFile.

Ao importar os receptores de evento, o arquivo elements XML é copiado para o local correto, mas você deve incluir manualmente o assembly no pacote de solução para que ele implanta com a solução. Para obter mais informações sobrecomo fazer isso, consulte Como: Adicionar e remover Assemblies adicionais.

Ao importar fluxos de trabalho, os formulários do InfoPath são copiados para o Arquivos importados de outros pasta. Se o arquivo. wsp contiver um modelo da Web, ela é definida como a página de inicialização Solution Explorer.

Importação de campos e bolsas de propriedade

Quando você importa uma solução que tem vários campos, todas as definições de campo separados são mescladas em um único arquivo elements sob um nó em Solution Explorer chamado campos. Da mesma forma, todas as entradas de saco de propriedade são mescladas em um arquivo elements sob um nó chamado PropertyBags.

Campos no SharePoint são colunas de um tipo de dados especificado, como, por exemplo, um texto, booleano ou pesquisa. Para obter mais informações, consulte Bloco de construção: Colunas e tipos de campo. Os pacotes de propriedade permitem que você adicionar propriedades a objetos no SharePoint, tudo a partir de um farm de uma lista em um site do SharePoint. Os pacotes de propriedade são implementados como uma tabela de hash de valores e nomes de propriedade. Para obter mais informações, consulte Gerenciamento de configuração do SharePoint ou configurações de propriedade do SharePoint saco.

Excluindo itens no projeto

A maioria dos itens em soluções do SharePoint têm um ou mais itens dependentes. Por exemplo, dependem de instâncias da lista de tipos de conteúdo e os tipos de conteúdo dependem de campos. Depois de importar uma solução do SharePoint, Visual Studio não notificá-lo de quaisquer problemas de referência se você excluir um item na solução, mas não seus itens dependentes, até que a tentativa de implantar a solução. Por exemplo, se uma solução importada tem uma instância de lista depende do tipo de conteúdo e excluir o tipo de conteúdo, pode ocorrer um erro na implantação. O erro ocorre se o item dependente não estiver presente no servidor do SharePoint. Da mesma forma, se um item excluído também tem um conjunto de propriedades relacionadas, exclua essas entradas de saco de propriedade da PropertyBags arquivo elements XML. Portanto, se você excluir todos os itens de uma solução importada e receber erros de implantação, verifique se todos os itens dependentes precisam também ser excluídos.

Restaurando o recurso atributos ausentes

Ao importar soluções, alguns atributos opcionais de recurso são omitidos do manifesto do recurso importado. Se você deseja restaurar esses atributos no novo arquivo de recurso, identificar a ausência de atributos, comparando o arquivo de recurso original para o novo manifesto de recurso e siga as instruções no tópico Como: Personalizar um recurso do SharePoint.

Detecção de conflitos de implantação não é executada em instâncias de lista interno

Visual Studionão executar a detecção de conflitos de implantação em instâncias de lista interno (isto é, lista instâncias padrão que vêm com o SharePoint). Não executar a detecção de conflito é feito para evitar a substituição as instâncias de lista interno no SharePoint. A lista interna de instâncias ainda são implantados ou atualizado, mas é nunca excluída ou substituída. Para obter mais informações, consulte Solução de problemas de empacotamento do SharePoint e implantação.

Importar fluxos de trabalho do SharePoint Server 2010

Se você importar um fluxo de trabalho criado em SharePoint Server 2010, ele não será executado corretamente após a implantação do proprietário. O fluxo de trabalho não será executado corretamente porque faltam determinados assemblies e SharePoint Server 2010 fluxos de trabalho contêm formulários do InfoPath que ainda não tem suporte no Visual Studio soluções de fluxo de trabalho. No entanto, importado SharePoint Server 2010 fluxos de trabalho podem ser feitos para funcionar corretamente depois de corrigir alguns itens, como, por exemplo, adicionar referências para o SharePoint Server 2010 assemblies e reconectar os formulários do InfoPath. Para obter mais informações, consulte Importar fluxos de trabalho do SharePoint Server 2010.

Limite de caracteres de nome de item

Visual Studiotem um limite de 260 caracteres total para o projeto e os nomes de item de projeto, incluindo o caminho. Ao importar uma solução, se um nome de item exceder esse limite, você obtém o erro:

O caminho especificado, o nome do arquivo ou ambos são muito longos. O nome de arquivo totalmente qualificado deve ter menos de 260 caracteres e o nome de diretório deve ter menos de 248 caracteres.

Quando você receber esse erro, o item não é criado. Esse problema ocorre com mais freqüência com módulos importados. Para evitar esse problema, faça o seguinte:

  • Use nomes curtos para seu projeto quando inseri-los a Add New Project caixa de diálogo.

  • Crie o projeto em um local como fechar para a pasta raiz quanto possível, para diminuir o caminho.

O atributo SharePointProductVersion

Se você importar uma solução criada em uma versão anterior do SharePoint, como Windows SharePoint Services 3.0 ou Microsoft Office SharePoint Server 2007, altere o valor do atributo SharePointProductVersion no manifesto do pacote para a versão 12.0, ou inserir um controle do Gerenciador de script em todas as páginas de Web importados e deixar o SharePointProductVersion definido como 14.0. Caso contrário, importados de Web forms não exibirá no SharePoint.

Segundo plano

Soluções em SharePoint Foundation 2010 e SharePoint Server 2010 incluem um atributo chamado SharePointProductVersion. Para determinar a versão do SharePoint, a solução foi projetada para o SharePoint usa esse atributo em seus manifestos de pacote. Os dois valores válidos são 12.0 e 14.0. O valor 12.0 indica se o item foi projetado para Windows SharePoint Services 3.0 ou Microsoft Office SharePoint Server 2007; um valor 14.0 indica se o item foi projetado para SharePoint Foundation 2010 ou SharePoint Server 2010.

Para aumentar a segurança ao renderizar as páginas ASPX, SharePoint Foundation 2010 e SharePoint Server 2010 exigem que todos os ASPX ou páginas mestras contêm um controle de Gerenciador de script. Para obter mais informações sobre o Gerenciador de scripts, consulte Visão geral do controle ScriptManager. Porque o controle do Gerenciador de script não estava disponível em Windows SharePoint Services 3.0 e Microsoft Office SharePoint Server 2007, um deve ser adicionado a qualquer Windows SharePoint Services 3.0 ou Microsoft Office SharePoint Server 2007 página que é atualizada para SharePoint Foundation 2010 ou SharePoint Server 2010. Páginas ASPX que usarem uma página mestra padrão não requerem um controle do Gerenciador de script porque já é adicionado à página mestra padrão. No entanto, as páginas ASPX que não use uma página mestra ou que usam uma página mestra personalizada devem adicionar o controle de um script para funcionar em SharePoint Foundation 2010 ou SharePoint Server 2010.

A ausência de um controle do Gerenciador de script pode ser um problema quando você importa um Windows SharePoint Services 3.0 ou Microsoft Office SharePoint Server 2007 o projeto em Visual Studio 2010, porque o atributo SharePointProductVersion de todos os novos projetos está definido como 14.0. Se você implantar um projeto atualizado que tenha um formulário da Web sem um Gerenciador de scripts, o formulário não será exibido no SharePoint.

Consulte também

Tarefas

Demonstra Passo a passo: Importar itens de um Site do SharePoint existente

Demonstra Passo a passo: Importar de um fluxo de trabalho reutilizáveis do SharePoint Designer para Visual Studio

Como: Adicionar um arquivo de modelo do BDC existente a um projeto do SharePoint

Outros recursos

Diretrizes para a importação de fluxos de trabalho reutilizáveis