Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Quando usa a estrutura de transformação de página, você tem muito controle sobre como a transformação de página é feita. O modelo para controlar isso é especificar a configuração correta como parte da PageTransformationInformation instância para páginas wiki e web part ou uma PublishingPageTransformationInformation instância para publicar páginas. A instância de transformação criada é o que você usa para iniciar a transformação de página. Neste artigo, você aprenderá mais sobre as opções disponíveis.
Importante
A modernização do SharePoint PnP faz parte da Estrutura PnP e está em constante evolução, verifique as notas de versão para se manter atualizado sobre as alterações mais recentes. Se você tiver problemas, registre-o na lista de problemas do GitHub sobre Estrutura PnP.
Opção de substituição
| Tipo | Valor padrão se não especificado |
|---|---|
| Bool | falso |
Quando você configura o Overwrite = true, a estrutura de transformação de página substitui a página de destino, se necessário. Por padrão, o novo nome da página têm um prefixo Migrated_, que sugere que, se já existe Migrated_YourPage.aspx (normalmente a partir de um esforço de transformação de uma página anterior), ela será substituída. O trecho abaixo mostra como usar essa opção.
PageTransformationInformation pti = new PageTransformationInformation(page)
{
Overwrite = true,
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
Overwrite = true,
};
Opção SourcePage
| Tipo | Valor padrão se não especificado |
|---|---|
| ListItem | null |
Normalmente definido por meio do construtor, conforme mostrado no exemplo abaixo. Isso indica que a página deve ser modernizada quando a página reside em uma lista
PageTransformationInformation pti = new PageTransformationInformation(page)
{
Overwrite = true,
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
Overwrite = true,
};
Opção SourceFile (a partir da versão de junho de 2019)
| Tipo | Valor padrão se não especificado |
|---|---|
| Arquivo | null |
Usado para definir uma página a ser modernizada quando a página reside fora de uma lista, ou seja, na pasta raiz do site. Essas páginas só podem ser páginas de Web Parts.
var fileToModernize = cc.Web.GetFileByServerRelativeUrl("/sites/myspecialsite/default.aspx");
cc.Load(fileToModernize);
cc.ExecuteQueryRetry();
PageTransformationInformation pti = new PageTransformationInformation(null)
{
SourceFile = true,
};
Opção TargetPagePrefix
| Tipo | Valor padrão se não especificado |
|---|---|
| String | Migrado_ |
A nova página moderna é chamada de {PreifixoPáginaDestino} {NomePáginaOriginal} (por exemplo, Migrated_MyPage.aspx). Se quiser outro prefixo, use esta opção.
PageTransformationInformation pti = new PageTransformationInformation(page)
{
TargetPagePrefix = "New_",
};
Observação
Essa opção não está disponível para a transformação de página de publicação.
Opção TargetPageTakesSourcePageName
| Tipo | Valor padrão se não especificado |
|---|---|
| Bool | falso |
O comportamento padrão é dar à página moderna criada um nome que comece com o prefixo Migrated_ e deixar a página original manter seu nome existente. Quando essa opção é especificada, a página recém-criada fica com o nome da página original e a página original é renomeada com o prefixo Previous_. Defina essa opção se tiver certeza de que deseja avançar com a página moderna, pois isso vai garantir que todos os links que apontam para a página original resultarão agora no carregamento da nova página moderna.
PageTransformationInformation pti = new PageTransformationInformation(page)
{
TargetPageTakesSourcePageName = true,
};
Importante
Durante a renomeação da página original para uma página começando com o prefixo Previous_, o histórico de versão da página original não é retido.
Observação
Essa opção não está disponível para a transformação de página de publicação.
Opção SourcePagePrefix
| Tipo | Valor padrão se não especificado |
|---|---|
| String | Previous_ |
Se você configurou TargetPageTakesSourcePageName = true, a página original será renomeada com um prefixo Previous_ padrão. Se quiser outro prefixo, use esta opção.
PageTransformationInformation pti = new PageTransformationInformation(page)
{
SourcePagePrefix = "Old_",
};
Observação
Essa opção não está disponível para a transformação de página de publicação.
Opção TargetPageName
| Tipo | Valor padrão se não especificado |
|---|---|
| Cadeia de caracteres | vazio |
Opcionalmente, você pode substituir o nome da página de destino. Por padrão, o mecanismo de transformação de página gerará um, mas às vezes é necessário substituí-lo (por exemplo, default.aspx colidirá com a página de exibição default.aspx da biblioteca SitePages).
PageTransformationInformation pti = new PageTransformationInformation(page)
{
TargetPageName = "mypage.aspx",
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
TargetPageName = "mypage.aspx",
};
Opção TargetPageFolder (a partir da versão de novembro de 2019)
| Tipo | Valor padrão se não especificado |
|---|---|
| Cadeia de caracteres | vazio |
Opcionalmente, você pode especificar a pasta na qual a página de destino será criada. Observe que se uma pasta foi criada automaticamente (por exemplo, porque você estava se transformando de uma biblioteca de páginas wiki extra), a pasta especificada por este parâmetro será combinada com a pasta gerada automaticamente (a menos que você use a TargetPageFolderOverridesDefaultFolder opção também). Você poderá especificar uma pasta como esta: MyFolder ou MyFolder/SubFolder quando desejar criar uma estrutura de pastas aninhada. Especificar <root> como valor permite direcionar a raiz da biblioteca sitepages de destino (a partir da versão de janeiro de 2020).
PageTransformationInformation pti = new PageTransformationInformation(page)
{
TargetPageFolder = "MyFolder",
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
TargetPageFolder = "MyFolder",
};
Opção TargetPageFolderOverridesDefaultFolder (a partir da versão de dezembro de 2019)
| Tipo | Valor padrão se não especificado |
|---|---|
| Bool | falso |
Você pode forçar a transformação de página para usar a pasta especificada por meio da TargetPageFolder propriedade, independentemente de haver uma pasta criada automaticamente ou não.
PageTransformationInformation pti = new PageTransformationInformation(page)
{
TargetPageFolderOverridesDefaultFolder = true,
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
TargetPageFolderOverridesDefaultFolder = true,
};
Opção ReplaceHomePageWithDefaultHomePage
| Tipo | Valor padrão se não especificado |
|---|---|
| Bool | falso |
O comportamento padrão é transformar a página inicial do site em uma página moderna como qualquer outra página normal. Se você definir essa opção como verdadeira, a página inicial do site será transformada em uma página inicial “padrão” pronta para uso, portanto, a página que você obteria com um site de equipe moderno recém-criado.
PageTransformationInformation pti = new PageTransformationInformation(page)
{
ReplaceHomePageWithDefaultHomePage = true,
};
Observação
Essa opção não está disponível para a transformação de página de publicação.
Opção KeepPageSpecificPermissions
| Tipo | Valor padrão se não especificado |
|---|---|
| Bool | verdadeiro |
O comportamento padrão é copiar qualquer permissão de nível de item que possa existir na página de origem; se você não desejar que isso aconteça, defina esta opção como falsa
PageTransformationInformation pti = new PageTransformationInformation(page)
{
KeepPageSpecificPermissions = false,
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
KeepPageSpecificPermissions = false,
};
Opção CopyPageMetadata (a partir da versão de fevereiro de 2019)
| Tipo | Valor padrão se não especificado |
|---|---|
| Bool | falso |
Se você estendeu sua biblioteca de páginas wiki com colunas adicionais para coletar metadados de página e deseja copiar esses metadados para a página moderna criada, defina essa opção como true
PageTransformationInformation pti = new PageTransformationInformation(page)
{
CopyPageMetadata = true,
};
Observação
Essa opção não está disponível para a transformação de página de publicação. Use o modelo de mapeamento de layout da página de publicação para definir se os metadados precisam ser copiados e como isso precisa acontecer.
Observação
A partir da versão de outubro de 2019, copiar metadados de página também funciona quando você faz uma transformação entre sites, ou seja, quando você cria a página moderna em um conjunto de sites diferente da página de origem original.
Opção RemoveEmptySectionsAndColumns (a partir da versão de março de 2019)
| Tipo | Valor padrão se não especificado |
|---|---|
| Bool | verdadeiro |
O comportamento padrão é remover todas as seções e colunas vazias (por exemplo, você transforma de um layout de 3 colunas e tem apenas uma web part na coluna do meio), pois isso resultará em um melhor uso do espaço da tela, se você não quiser isso, defina essa opção como false
PageTransformationInformation pti = new PageTransformationInformation(page)
{
RemoveEmptySectionsAndColumns = false,
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
RemoveEmptySectionsAndColumns = false,
};
Dicionário MappingProperties (a partir da versão de março de 2019)
| Tipo | Valor padrão se não especificado |
|---|---|
| Cadeia de caracteres do dicionário,cadeia<de caracteres> | vazio |
O arquivo de mapeamento padrão pode ser configurado definindo as propriedades de mapeamento
PageTransformationInformation pti = new PageTransformationInformation(page)
{
// If target page exists, then overwrite it
Overwrite = true,
};
pti.MappingProperties["SummaryLinksToQuickLinks"] = "false";
pageTransformator.Transform(pti);
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
// If target page exists, then overwrite it
Overwrite = true,
};
pti.MappingProperties["SummaryLinksToQuickLinks"] = "false";
pageTransformator.Transform(pti);
Opção PublishCreatedPage (a partir da versão de abril de 2019)
| Tipo | Valor padrão se não especificado |
|---|---|
| Bool | verdadeiro |
O comportamento padrão é publicar a página moderna criada, use esta opção se quiser evitar isso.
PageTransformationInformation pti = new PageTransformationInformation(page)
{
PublishCreatedPage = false,
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
PublishCreatedPage = false,
};
Opção KeepPageCreationModificationInformation (a partir da versão de outubro de 2019)
| Tipo | Valor padrão se não especificado |
|---|---|
| Bool | falso |
O comportamento padrão é não manter o autor, o editor, os dados de criação e a data de modificação da página de origem. Use esta opção para alterar isso.
Observação
Essa opção funciona apenas quando a página de origem está no mesmo locatário SPO que o destino da página moderna.
PageTransformationInformation pti = new PageTransformationInformation(page)
{
KeepPageCreationModificationInformation = true,
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
KeepPageCreationModificationInformation = true,
};
Opção PostAsNews (a partir da versão de outubro de 2019)
| Tipo | Valor padrão se não especificado |
|---|---|
| Bool | falso |
Publique a página criada como notícia. Isso implica que a página também será publicada, mesmo que você tenha usado a para impedir a PublishCreatedPage publicação da página.
PageTransformationInformation pti = new PageTransformationInformation(page)
{
PostAsNews = true,
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
PostAsNews = true,
};
Opção DisablePageComments (a partir da versão de abril de 2019)
| Tipo | Valor padrão se não especificado |
|---|---|
| Bool | falso |
O comportamento padrão é deixar os comentários da página habilitados. Use esta opção se quiser criar uma página com comentários de página desabilitados
PageTransformationInformation pti = new PageTransformationInformation(page)
{
DisablePageComments = true,
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
DisablePageComments = true,
};
Opção SkipUrlRewrite (a partir da versão de maio de 2019)
| Tipo | Valor padrão se não especificado |
|---|---|
| Bool | falso |
O comportamento padrão é deixar a reescrita de URL habilitada. Use esta opção se quiser criar uma página com a reescrita de URL desabilitada. Confira o artigo mapeamento de URL para saber mais.
PageTransformationInformation pti = new PageTransformationInformation(page)
{
SkipUrlRewrite = true,
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
SkipUrlRewrite = true,
};
Opção UrlMappingFile (a partir da versão de julho de 2019)
| Tipo | Valor padrão se não especificado |
|---|---|
| Cadeia de caracteres | vazio |
Opcionalmente, você pode especificar um arquivo com mapeamentos de URL personalizados. Confira o artigo mapeamento de URL para saber mais.
PageTransformationInformation pti = new PageTransformationInformation(page)
{
UrlMappingFile = @"c:\temp\urlmappingfile.csv",
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
UrlMappingFile = @"c:\temp\urlmappingfile.csv",
};
Opção SkipDefaultUrlRewrite (a partir da versão de setembro de 2019)
| Tipo | Valor padrão se não especificado |
|---|---|
| Bool | falso |
O comportamento padrão é executar a reescrita da URL padrão. Caso você esteja usando um arquivo de mapeamento de URL personalizado e não queira aplicar a lógica de reescrita de URL padrão, defina essa propriedade. Confira o artigo mapeamento de URL para saber mais.
PageTransformationInformation pti = new PageTransformationInformation(page)
{
SkipDefaultUrlRewrite = true,
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
SkipDefaultUrlRewrite = true,
};
Opção AddTableListImageAsImageWebPart (a partir da versão de outubro de 2019)
| Tipo | Valor padrão se não especificado |
|---|---|
| Bool | verdadeiro |
As imagens que ficam dentro de uma tabela/lista também eram criadas como Web Parts de imagem separadas abaixo dessa tabela/lista. Defina a AddTableListImageAsImageWebPart propriedade como false se quiser interromper a criação dessas Web Parts de imagem separadas.
PageTransformationInformation pti = new PageTransformationInformation(page)
{
AddTableListImageAsImageWebPart = false,
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
AddTableListImageAsImageWebPart = false,
};
Opção UserMappingFile (a partir da versão de novembro de 2019)
| Tipo | Valor padrão se não especificado |
|---|---|
| Cadeia de caracteres | vazio |
Opcionalmente, você pode especificar um arquivo com mapeamentos de usuário personalizados. Confira o artigo Mapeamento de usuário para saber mais.
PageTransformationInformation pti = new PageTransformationInformation(page)
{
UserMappingFile = @"c:\temp\usermappingfile.csv",
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
UserMappingFile = @"c:\temp\usermappingfile.csv",
};
Opção LDAPConnectionString (a partir da versão de novembro de 2019)
| Tipo | Valor padrão se não especificado |
|---|---|
| Cadeia de caracteres | vazio |
Opcionalmente, você pode especificar uma cadeia de conexão LDAP personalizada para o ambiente do Active Directory. Confira o artigo Mapeamento de usuário para saber mais.
PageTransformationInformation pti = new PageTransformationInformation(page)
{
LDAPConnectionString = "LDAP://OU=Test,DC=CONTOSO,DC=COM",
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
LDAPConnectionString = "LDAP://OU=Test,DC=CONTOSO,DC=COM",
};
Opção SkipUserMapping (a partir da versão de novembro de 2019)
| Tipo | Valor padrão se não especificado |
|---|---|
| Bool | falso |
O comportamento padrão é sempre realizar o mapeamento de usuário quando você estiver transformando páginas provenientes do SharePoint local. Use esta opção para desabilitar isso. Confira o artigo mapeamento de URL para saber mais.
PageTransformationInformation pti = new PageTransformationInformation(page)
{
SkipUserMapping = true,
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
SkipUserMapping = true,
};
Opção TermMappingFile (a partir da versão de março de 2020)
| Tipo | Valor padrão se não especificado |
|---|---|
| Cadeia de caracteres | vazio |
Opcionalmente, você pode especificar um arquivo com mapeamentos de termos personalizados. Confira o artigo Mapeamento de termo para saber mais.
PageTransformationInformation pti = new PageTransformationInformation(page)
{
TermMappingFile = @"c:\temp\termmappingfile.csv",
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
TermMappingFile = @"c:\temp\termmappingfile.csv",
};
Opção SkipTermStoreMapping (a partir da versão de março de 2020)
| Tipo | Valor padrão se não especificado |
|---|---|
| Bool | falso |
O comportamento padrão é realizar o mapeamento de termos padrão. Caso você não queira que nenhum mapeamento de termo aconteça, defina essa propriedade. Confira o artigo Mapeamento de termo para saber mais.
PageTransformationInformation pti = new PageTransformationInformation(page)
{
SkipTermStoreMapping = true,
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
SkipTermStoreMapping = true,
};
Opção HandleWikiImagesAndVideos
| Tipo | Valor padrão se não especificado |
|---|---|
| Bool | verdadeiro |
Uma página wiki pode conter vídeo e texto inseridos, o que não é possível em uma web part de texto moderna. Por padrão, o texto wiki será dividido em cada imagem ou vídeo inserido, uma web part de vídeo ou imagem será adicionada à página moderna e depois o restante do texto original. Se essa correção automática não agradá-lo, você poderá definir essa opção como falsa, o que fará com que cada imagem e vídeo inseridos sejam substituídos por um espaço reservado para texto combinado com web parts individuais de vídeo e imagem na parte inferior da página.
PageTransformationInformation pti = new PageTransformationInformation(page)
{
HandleWikiImagesAndVideos = false,
};
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
HandleWikiImagesAndVideos = false,
};
Opção PageHeader
| Tipo | Valor padrão se não especificado |
|---|---|
| ClientSidePageHeader | Nulo |
O cabeçalho de página padrão para a página moderna é do tipo ClientSidePageHeaderType.None, que é mais parecido com o cabeçalho da página wiki. No entanto, se preferir um cabeçalho de página moderna padrão (com uma zona cinza grande), você poderá obtê-lo, usando essa opção (outro exemplo abaixo). Você também pode configurar um cabeçalho de página personalizado com todas as suas opções associadas, como imagem de tela de fundo, alinhamento etc.
PageTransformationInformation pti = new PageTransformationInformation(page)
{
PageHeader = new ClientSidePageHeader(cc, ClientSidePageHeaderType.Default, null),
};
Observação
Essa opção não está disponível para a transformação de página de publicação. Use o modelo de mapeamento de layout de página para determinar como o cabeçalho de página deve ser construído.
Opção PageTitleOverride
| Tipo | Valor padrão se não especificado |
|---|---|
| Func<string, string> | null |
O título da página moderna é deduzido da página de origem, aproveitando o nome da página e eliminando a extensão, mas você pode inserir qualquer título de página personalizado no fluxo de transformação por este texto explicativo. O exemplo mostrado adiciona um sufixo _1 ao título padrão.
// Local functions
string titleOverride(string title)
{
return $"{title}_1";
}
PageTransformationInformation pti = new PageTransformationInformation(page)
{
PageTitleOverride = titleOverride,
};
// Local functions
string titleOverride(string title)
{
return $"{title}_1";
}
PublishingPageTransformationInformation pti = new PublishingPageTransformationInformation(page)
{
PageTitleOverride = titleOverride,
};
Opção LayoutTransformatorOverride
| Tipo | Valor padrão se não especificado |
|---|---|
| Func<ClientSidePage, ILayoutTransformator> | null |
O mecanismo de transformação de página tem um transformador de layout padrão que pode lidar com todos os layouts de página de web parts e wiki box; porém, se você quiser substituir isso, pode especificar o seu próprio.
public class MyLayout : ILayoutTransformator
{
private ClientSidePage page;
public MyLayout(ClientSidePage page)
{
this.page = page;
}
public void Transform(PageLayout layout)
{
// custom layout transformation...add sections to the target page based upon the recieved page layout
switch (layout)
{
case PageLayout.Wiki_OneColumn:
case PageLayout.WebPart_FullPageVertical:
case PageLayout.Wiki_Custom:
case PageLayout.WebPart_Custom:
{
page.AddSection(CanvasSectionTemplate.OneColumn, 1);
return;
}
// add more incoming layouts...
default:
{
page.AddSection(CanvasSectionTemplate.OneColumn, 1);
return;
}
}
}
}
// Local functions
ILayoutTransformator layoutOverride(ClientSidePage cp)
{
return new MyLayout();
}
PageTransformationInformation pti = new PageTransformationInformation(page)
{
LayoutTransformatorOverride = layoutOverride,
};