Diretórios virtuais nas soluções do SharePoint

Saiba mais sobre como as alterações no sistema de diretório virtual afetam a forma como você cria soluções de farm no SharePoint.

Verifique suas soluções compatíveis com o novo sistema do modo de interface do usuário

Quando você está usando o Software Development Kit (SDK) do Microsoft SharePoint 2010, mas desenvolvendo para o SharePoint, há uma alteração no sistema de diretório virtual que você precisa considerar enquanto trabalha. A alteração é um efeito colateral do novo recurso do SharePoint que permite que um conjunto de sites seja executado no modo SharePoint 2010 ou no modo SharePoint. Os modos são chamados de níveis de compatibilidade ouversões de interface do usuário. Para arquivos em pastas _layouts virtuais ou _controltemplates, o SharePoint precisa usar a versão dos arquivos em %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\15\ (às vezes chamado de hive 15) ou no hive 14 correspondente, dependendo do modo do conjunto de sites. O SharePoint adiciona "/15" ao caminho do diretório virtual logo após o nome do diretório virtual para sinalizar que os arquivos do SharePoint devem ser usados. A ausência dessa seqüência extra indica que arquivos de SharePoint 2010 devem ser usados.

Esse novo sistema tem implicações para você à medida que você desenvolve soluções e aplicativos do SharePoint, especialmente quando você está usando o SDK do SharePoint 2010. Em qualquer Suplemento do SharePoint (que só é executado no modo SharePoint) e em qualquer solução do SharePoint que você sabe que só será usada em conjuntos de sites executados no modo SharePoint, você precisa adicionar o "/15" a todos os _layouts_controltemplates caminhos virtuais criados em sua solução/aplicativo. (a menos que o caminho aponte para um arquivo *.aspx), mesmo que essa cadeia de caracteres não apareça em nenhuma instrução lida no SDK do SharePoint 2010. Por exemplo, se o SDK do SharePoint 2010 instruir você a usar ~/_layouts/images/myimage.png, você deve usar ~/_layouts/15/images/myimage.png quando estiver desenvolvendo para o SharePoint.

Se você precisar fazer sua solução compatível com os conjuntos de sites de qualquer modo, você precisa de ramificação lógica para determinar o modo de conjunto de sites atual e construir o caminho virtual da mesma forma. A propriedade CompatibilityLevel, que também está disponível em todos os modelos de objeto cliente do SharePoint e na interface REST, é um local em que seu código pode marcar o modo. A classe SPUtility também tem várias novas propriedades para auxiliar no gerenciamento de nível de compatibilidade em suas soluções. Eles não estão disponíveis nos modelos de objeto do cliente. Finalmente, há vários controles no SharePoint que expõem uma propriedade UIVersion que seu código também pode usar para encontrar o nível de compatibilidade atual.

Observação

Se o arquivo no caminho virtual for *.aspx, o SharePoint detectará automaticamente o modo do conjunto de sites atual e retornará o arquivo do hive apropriado. Portanto, você não precisa inserir o "/15" no caminho virtual.

Confira também