Pergunta

Eu criei um módulo com alguns arquivos que eu atualizar e eliminar através de spfeature.Uma coisa é se um layout de página está em uso, não posso apagá-lo e ele lança um erro, mesmo quando dentro de um try{ }catch{} .Como faço para testar o layout de página(s) a ser utilizado?-C#

Foi útil?

Solução

Para testar a sua lista de páginas do Recurso desativado evento você deve ser capaz de consultar a página de layout.A seguir retornará todas as páginas em "Páginas" lista cujo layout de página contém "WebPartPage.aspx".

SPList spList = spWeb.Lists.TryGetList("Pages"); 
if (spList != null) 
{ 
   SPQuery qry = new SPQuery(); 
   qry.Query = 
   @"   <Where>
      <Contains>
         <FieldRef Name='PublishingPageLayout' />
         <Value Type='URL'>WebPartPage.aspx</Value>
      </Contains>
   </Where>"; 
   qry.ViewFields = @"<FieldRef Name='PublishingPageLayout' />"; 
   SPListItemCollection listItems = spList.GetItems(qry); 
} 

Outras dicas

Você pode fazer o check-realmente fácil para a direita no navegador usando o a serviço da web listdata.svc.

Exibir todas as páginas do "Páginas" e da lista de seus layouts

<yoursiteUrl>/_vti_bin/listdata.svc/Pages?$select=Name,PageLayout

Exibir apenas páginas de "Páginas" lista usando BlankWebPartPage.aspx layout

<yoursiteUrl>/_vti_bin/listdata.svc/Pages?$select=Name,PageLayout&$filter=substringof('BlankWebPartPage.aspx',%20PageLayout)%20eq%20true

Nota:Se você usa o IE, você vai querer ver as matérias XML não o "útil" a exibição de feeds rss.Vá para Opções da Internet -> Conteúdo -> administração - > Feeds e Web Slices Configurações -> Desmarque a opção "Ativar o feed modo de exibição de leitura"

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