Partager via


Procédure : créer des propriétés taxonomiques à valeurs multiples

Dernière modification : mercredi 14 avril 2010

S’applique à : SharePoint Server 2010

Dans Microsoft SharePoint Server 2010, vous pouvez lier des propriétés de profil utilisateur à un ensemble de termes de taxonomie imposant une liste de valeurs possibles. Vous pouvez associer une propriété à une liste de choix en créant une propriété taxonomique avec plusieurs valeurs.

Pour plus d’informations sur la création et l’utilisation de taxonomies et d’ensembles de termes, voir Présentation succincte de la gestion des métadonnées d’entreprise à l’attention des développeurs Microsoft SharePoint Server 2010. En outre, dans cette même rubrique, voir la section Exemple de code : création et validation d’une taxonomie, ajout d’étiquettes et suppression d’un terme pour un exemple de code qui montre comment créer l’ensemble de termes utilisé dans l’exemple de code fourni dans la présente rubrique.

L’exemple de code ci-après montre comment définir une propriété taxonomique avec plusieurs valeurs. Avant de l’exécuter, remplacez servername par une valeur réelle. Ajoutez également les références aux assemblys suivants à votre projet Microsoft Visual Studio :

  • Microsoft.Office.Server

  • Microsoft.Office.Server.UserProfiles

  • Microsoft.SharePoint

  • Microsoft.SharePoint.Taxonomy

  • System.Web

Exemple

using System;
using Microsoft.Office.Server.UserProfiles;
using Microsoft.SharePoint;
using Microsoft.SharePoint.Taxonomy;
 
namespace UserProfilesOMApp
{
    class Program
    {
        static void Main(string[] args)
        {
            // Code example adds a new multi value property named Hobbies.
            using (SPSite site = new SPSite("https://servername"))
            {
                SPServiceContext context = SPServiceContext.GetContext(site);
                UserProfileConfigManager upcm = new UserProfileConfigManager(context);
 
                try
                {
                    ProfilePropertyManager ppm = upcm.ProfilePropertyManager;
 
                    // Create core property.
                    CorePropertyManager cpm = ppm.GetCoreProperties();
                    CoreProperty cp = cpm.Create(false);
                    cp.Name = "Hobbies";
                    cp.DisplayName = "Hobbies";
                    cp.Type = "String (Multi Value)";
                    cp.IsMultivalued = true;
 
                    // Set the TermSet.
                    TaxonomySession taxonomySession = new TaxonomySession(site);
                    TermStore termStore = taxonomySession.TermStores["Managed Metadata Service"];
                    Group group = termStore.Groups["Group1"];
                    TermSet termSet = group.TermSets["TermSet1"];
 
                    cp.TermSet = termSet;
 
                    cpm.Add(cp);
 
                    // Create profile type property.
                    ProfileTypePropertyManager ptpm = ppm.GetProfileTypeProperties(ProfileType.User);
                    ProfileTypeProperty ptp = ptpm.Create(cp);
 
                    ptpm.Add(ptp);
 
                    // Create profile subtype property.
                    ProfileSubtypeManager psm = ProfileSubtypeManager.Get(context);
                    ProfileSubtype ps = psm.GetProfileSubtype(ProfileSubtypeManager.GetDefaultProfileName(ProfileType.User));
                    ProfileSubtypePropertyManager pspm = ps.Properties;
                    ProfileSubtypeProperty psp = pspm.Create(ptp);
 
                    psp.PrivacyPolicy = PrivacyPolicy.OptIn;
                    psp.DefaultPrivacy = Privacy.Organization;
 
                    pspm.Add(psp);
                }
                catch (DuplicateEntryException e)
                {
                    Console.WriteLine(e.Message);
                    Console.Read();
                }
                catch (System.Exception e2)
                {
                    Console.WriteLine(e2.Message);
                    Console.Read();
                }
            }
        }
    }
}

Voir aussi

Tâches

Procédure : créer et modifier une propriété de profil utilisateur

Procédure : créer des propriétés à valeurs multiples

Procédure : attribuer plusieurs valeurs à une propriété à valeurs multiples

Procédure : modifier des propriétés de profils

Procédure : définir des stratégies de confidentialité pour les propriétés de profil utilisateur