Pergunta

Criei um projeto que definia alguns tipos de conteúdo e listas via XML.Após o lançamento, precisamos fazer algumas atualizações neste recurso para incluir algumas novas funcionalidades.Minha preocupação é que, como tudo isso foi feito via XML, poderiam ocorrer problemas graves.

As listas inicialmente criadas são críticas.Ao fazer uma solução de atualização, ele destruirá as listas e tentará provisionar novas ou verá que elas já existem e não fará nada?As atualizações não afetam as listas em si, mas atualizam algumas páginas ASPX, arquivos javascript e adicionam localização.

Desde este projeto, passei a criar e provisionar listas por meio do código de ativação de recursos em vez de instâncias de listas estáticas. Eu poderia lidar com tudo isso no receptor de eventos de atualização de recursos, se fosse o caso.

Foi útil?

Solução

As listas definidas via XML são eliminadas se você escolher "Implantar" no Visual Studio, mas permanecem intactas usando Update-SPSolution.Se você estiver alterando apenas arquivos, páginas ou códigos implantados em seu assembly, suas alterações deverão ser executadas com um Update-SPSolution.

A única coisa que você precisa considerar é que os arquivos que foram implantados no SharePoint por meio de Módulos no SP 2010 não são substituídos automaticamente usando Update-SPSolution então você terá que removê-los primeiro se houver modificações neles.Este não é o caso dos arquivos implantados no sistema de arquivos.Importante notar é que o Update-SPSolution comando não aciona o SPFeatureReceiver.FeatureUpgrading evento, então essa não é uma abordagem válida para remover esses arquivos.Ver: O Update-SPSolution aciona um SPFeature.Upgrade()?

No SP 2013 você pode usar o ReplaceContent="TRUE" atributo para lidar com esse problema.Ver: Substituindo arquivos fantasmas em bibliotecas do SharePoint 2013 usando elementos de recurso (sem código)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a sharepoint.stackexchange
scroll top