Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Importante
Os suplementos do SharePoint atingiram o fim da vida útil no SharePoint Online em 2 de abril de 2026. Os suplementos hospedados no SharePoint e hospedados pelo provedor foram desativados e não funcionam mais no SharePoint Online, incluindo nuvens governamentais. As diretrizes de desenvolvimento, implantação e uso de suplementos são mantidas para referência histórica e para cenários aplicáveis do Servidor do SharePoint, não para novas soluções do SharePoint Online.
Os suplementos do Servidor do SharePoint implantados por meio de um catálogo de aplicativos local não são desativados por essa alteração. A aquisição de Suplementos do SharePoint do marketplace público terminou em 2 de abril de 2026 para o Servidor do SharePoint.
Essa desativação não desativa APIs REST do SharePoint, CSOM, JSOM ou SPFx (Estrutura do SharePoint). Para o SharePoint Online, use SPFx para extensões de interface do usuário e o Microsoft Entra ID para autenticação para aplicativos externos. Consulte o anúncio de desativação e as diretrizes de migração de suplemento.
O exemplo UserProfile.Manipulation.CSOM mostra como ler e atualizar as propriedades de perfil de usuário para um usuário específico. Este exemplo usa um suplemento hospedado pelo provedor para:
- Ler e exibir todas as propriedades de perfil de usuário para um usuário.
- Atualizar uma propriedade de perfil de usuário de valor único.
- Atualizar uma propriedade de perfil de usuário de valores múltiplos.
Use esta solução se desejar:
- Ler ou gravar dados em uma propriedade de perfil de usuário para um usuário.
- Usar valores de propriedades de perfil de usuário para personalizar o SharePoint.
Observação
Este exemplo de código só é executado no Office 365.
Antes de começar
Para começar, faça o download do suplemento de exemplo UserProfile.Manipulation.CSOM no projeto Padrões e Práticas do Desenvolvedor do Office 365 no GitHub.
Observação
The code in this article is provided as-is, without warranty of any kind, either express or implied, including any implied warranties of fitness for a particular purpose, merchantability, or non-infringement.
Antes de executar o Cenário 1
Na parte superior do seu site do Office 365, escolha a imagem de perfil e escolha Sobre mim.
Na página Sobre mim, escolha editar seu perfil.
Na página Sobre mim, insira Eu trabalho na Contoso.
Escolha Salvar tudo e fechar.
Antes de executar o Cenário 3
- Na parte superior do seu site, escolha a imagem de perfil e escolha Sobre mim.
- Na página Sobre mim, escolha editar seu perfil.
- Em Editar detalhes, escolha detalhes.
- Em Habilidades, insira C#, JavaScript.
- Escolha Salvar tudo e fechar.
Usando o suplemento de exemplo UserProfile.Manipulation.CSOM
Quando você executa este exemplo, um suplemento hospedado pelo provedor começa, conforme mostrado na figura a seguir.
Este exemplo de código inclui três cenários.
| Cenário | Mostra como |
|---|---|
| 1 | Leia todas as propriedades de perfil do usuário para o usuário que executa o aplicativo. |
| 2* | Atualizar uma propriedade de perfil de usuário de valor único. |
| 3* | Atualizar uma propriedade de perfil de usuário de valores múltiplos. |
Observação
Esse cenário só tem suporte no Microsoft 365.
Cenário 1: Ler todas as propriedades de perfil do usuário
Quando você escolhe Executar cenário 1o suplemento lê todas as propriedades de perfil de usuário para o usuário atual e, em seguida, exibe os dados do perfil do usuário em Propriedades atuais de perfil do usuário, conforme mostrado a seguir imagem.
Ao escolherExecutar cenário 1 o métodobtnScenario1_Click será chamado em CodeSample1.aspx.cs para executar as seguintes tarefas:
- Use PeopleManager para recuperar todas as propriedades de perfil do usuário para o usuário atual.
- Iterar PersonProperties.UserProfileProperties para listar os valores de propriedades do perfil de usuário na caixa de texto.
protected void btnScenario1_Click(object sender, EventArgs e)
{
var spContext = SharePointContextProvider.Current.GetSharePointContext(Context);
using (var clientContext = spContext.CreateUserClientContextForSPHost())
{
// Get the people manager instance and load current properties.
PeopleManager peopleManager = new PeopleManager(clientContext);
PersonProperties personProperties = peopleManager.GetMyProperties();
clientContext.Load(personProperties);
clientContext.ExecuteQuery();
// Output user profile properties to a text box.
txtProperties.Text = "";
foreach (var item in personProperties.UserProfileProperties)
{
txtProperties.Text += string.Format("{0} - {1}{2}", item.Key, item.Value, Environment.NewLine);
}
}
}
Cenário 2: Atualizar uma propriedade de perfil de usuário de valor único
O cenário 2 mostra como atualizar uma propriedade de perfil de usuário valor único. Conforme será mostrado na figura a seguir, o valor atual da propriedade de perfil de usuárioSobre mim para o usuário que executar esse suplemento está Eu trabalho na Contoso.
Para atualizar o valor da propriedade de perfil de usuário Sobre mim na caixa Novo valor sobre mim, digite Eu sou um engenheiro de software na Contosoe escolha Executar cenário 2. O código atualiza o valor da propriedade Sobre mim para Eu sou um engenheiro de software na Contoso.
Como mostrado na figura a seguir, a atualização de suplemento Valor atual sobre mim com o novo valor da propriedade de perfil de usuário Sobre mim.
Ao escolherExecutar cenário 2 o métodobtnScenario2_Click será chamado no CodeSample2.aspx.cs para fazer o seguinte:
- Use PeopleManager para obter todas as propriedades de perfil do usuário para o usuário atual.
- Formate o texto inserido pelo usuário em HTML.
- Atualize o valor da propriedade de perfil de usuário AboutMe usando SetSingleValueProfileProperty, que aceita três parâmetros:
- O nome da conta de usuário cujo perfil de usuário você está atualizando.
- O nome da propriedade do perfil de usuário (AboutMe neste cenário).
- O valor da propriedade, no formato HTML (sou um engenheiro de software na Contoso neste cenário).
protected void btnScenario2_Click(object sender, EventArgs e)
{
var spContext = SharePointContextProvider.Current.GetSharePointContext(Context);
using (var clientContext = spContext.CreateUserClientContextForSPHost())
{
// Get the people manager instance and initialize the account name.
PeopleManager peopleManager = new PeopleManager(clientContext);
PersonProperties personProperties = peopleManager.GetMyProperties();
clientContext.Load(personProperties, p => p.AccountName);
clientContext.ExecuteQuery();
// Convert entry to HTML.
string updatedValue = (txtAboutMe.Text).Replace(Environment.NewLine, "");
// Update the AboutMe property for the user using account name from the user profile.
peopleManager.SetSingleValueProfileProperty(personProperties.AccountName, "AboutMe", updatedValue);
clientContext.ExecuteQuery();
}
}
Observação
Se você usa as propriedades personalizadas de perfil de usuário, configure a propriedade para que ela possa ser editada pelos usuários. A técnica usada neste cenário funciona para as propriedades personalizadas de perfil de usuário.
Cenário 3: Atualizar uma propriedade de perfil de usuário de valores múltiplos.
O Cenário 3 mostra como atualizar uma propriedade de perfil de usuário de valores múltiplos. A figura a seguir mostra a página inicial do Cenário 3. Valor atual das qualificações mostra as qualificações do usuário com o aplicativo. As habilidades são lidas a partir da propriedade de perfil de usuário SPS habilidades para o usuário.
Para adicionar novas habilidades à propriedade de perfil de usuárioSPS-Skillsa partir desse suplemento:
- Insira HTML5 e, em seguida, escolha Adicionar qualificações.
- Insira ASP.NET e escolha Adicionar Habilidade.
- Escolha Executar cenário 3.
- Verifique se Valor atual das qualificações mostra a nova lista de qualificações para o usuário.
- Verifique se agora a propriedade de perfil de usuário SPS-Skills para o usuário mostra a nova lista de qualificações.
Ao escolher Executar cenário 3 o método btnScenario3_Click será chamado no CodeSample3.aspx.cs para fazer o seguinte:
- Use PeopleManager para obter todas as propriedades de perfil do usuário para o usuário atual.
- Leia a lista de qualificações mostrada na caixa de listagem.
- Salvar novas habilidades para a propriedade de perfil de usuário SPS-Skills usando SetMultiValuedProfileProperty, que aceita três parâmetros:
- O nome da conta de usuário cujo perfil de usuário está sendo atualizado.
- O nome de propriedade de perfil de usuário, que é SPS-Skills.
- Os valores de propriedade como uma Lista de objetos de cadeia de caracteres.
protected void btnScenario3_Click(object sender, EventArgs e)
{
var spContext = SharePointContextProvider.Current.GetSharePointContext(Context);
using (var clientContext = spContext.CreateUserClientContextForSPHost())
{
// Get the people manager instance and initialize the account name.
PeopleManager peopleManager = new PeopleManager(clientContext);
PersonProperties personProperties = peopleManager.GetMyProperties();
clientContext.Load(personProperties, p => p.AccountName);
clientContext.ExecuteQuery();
// Collect the user's skills from the list box in order to update the user's profile.
List<string> skills = new List<string>();
for (int i = 0; i < lstSkills.Items.Count; i++)
{
skills.Add(lstSkills.Items[i].Value);
}
// Update the SPS-Skills property for the user using account name from the user's profile.
peopleManager.SetMultiValuedProfileProperty(personProperties.AccountName, "SPS-Skills", skills);
clientContext.ExecuteQuery();
// Refresh the values.
RefreshUIValues();
}
}