Procédure : récupérer les propriétés analysées mappées sur une propriété gérée
Vous pouvez accéder à la liste des propriétés analysées mappées sur une propriété gérée à l'aide du modèle objet Administration de la Recherche de contenu d'entreprise.
La procédure suivante montre comment écrire les GUID et les catégories des propriétés analysées mappées sur une propriété gérée spécifique à partir d'une application de console.
Pour récupérer les propriétés analysées mappées sur une propriété gérée
Dans votre application, définissez des références aux DLL suivantes :
Microsoft.SharePoint.dll
Microsoft.Office.Server.dll
Microsoft.Office.Server.Search.dll
Dans le fichier des classes de votre application de console, ajoutez les instructions using suivantes dans la partie supérieure du code avec les autres directives d'espace de noms.
using Microsoft.SharePoint; using Microsoft.Office.Server.Search.Administration;
Pour récupérer l'objet Schema du contexte de recherche du fournisseur de services partagés (SSP), ajoutez le code suivant. Pour plus d'informations sur les manières de récupérer le contexte de recherche, voir Procédure : renvoyer le contexte de recherche pour le fournisseur du service de recherche.
/* Replace <SiteName> with the name of a site using the SSP */ string strURL = "http://<SiteName>"; SearchContext context; using (SPSite site = new SPSite(strURL)) { Context = SearchContext.GetContext(site); } Schema sspSchema = new Schema(context);
Récupérez la collection des propriétés gérées à l'aide du code suivant :
ManagedPropertyCollection properties = sspSchema.AllManagedProperties;
Récupérez la propriété gérée correspondant au nom spécifié dans le paramètre args[0].
ManagedProperty mProp = properties[args[0]]
Récupérez la liste des propriétés analysées de cette propriété gérée et écrivez le nom de la catégorie et le GUID de la propriété sur la console. Pour ce faire, remplacez les caractères « <…> » de l'étape précédente par le code suivant :
foreach (CrawledProperty cProp in mProp.GetMappedCrawledProperties(mProp.GetMappings().Count)) { Console.WriteLine(cProp.Name); Console.WriteLine(cProp.Propset); }
Exemple
Ci-dessous figure le code complet pour l'exemple de classe de l'application console.
Conditions préalables requises
- Vérifiez qu'un fournisseur de services partagés est déjà créé.
Références de projet
Ajoutez les références de projet suivantes au projet de code de votre application console avant d'exécuter cet exemple :
Microsoft.SharePoint
Microsoft.Office.Server
Microsoft.Office.Server.Search
using System;
using System.Collections;
using System.Text;
using Microsoft.Office.Server.Search.Administration;
using Microsoft.SharePoint;
namespace ManagedPropertiesSample
{
class Program
{
static void Main(string[] args)
{
try
{
/*
Replace <SiteName> with the name
of a site using the SSP
*/
string strURL = "http://<SiteName>";
SearchContext context;
using (SPSite site = new SPSite(strURL))
{
Context = SearchContext.GetContext(site);
}
Schema sspSchema = new Schema(context);
ManagedPropertyCollection props = sspSchema.AllManagedProperties;
ManagedProperty mProp = properties[args[0]];
foreach (CrawledProperty cProp in mProp.GetMappedCrawledProperties(mProp.GetMappings().Count))
{
Console.WriteLine(cProp.Name);
Console.WriteLine(cProp.Propset);
}
}
catch(Exception ex)
{
Console.WriteLine(ex.ToString());
}
}
}
}
Voir aussi
Autres ressources
Mise en route du modèle objet Administration de recherche
Gestion des métadonnées
Procédure : récupérer les propriétés gérées pour un fournisseur de services partagés
Procédure : créer une propriété gérée
Procédure : supprimer une propriété gérée