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