Compartir a través de


Procedimiento para recuperar las propiedades rastreadas asignadas a una propiedad administrada

Puede usar el modelo de objetos de administración de Enterprise Search para obtener acceso a la lista de propiedades rastreadas asignadas a una propiedad administrada.

El procedimiento siguiente muestra cómo escribir los GUID y las categorías de las propiedades rastreadas asignadas a una propiedad específica administrada desde una aplicación de consola.

Para recuperar las propiedades rastreadas asignadas a una propiedad administrada

  1. En la aplicación, establezca referencias a las siguientes DLL:

    • Microsoft.SharePoint.dll

    • Microsoft.Office.Server.dll

    • Microsoft.Office.Server.Search.dll

  2. En el archivo de clase de la aplicación de consola, agregue la siguiente instrucción using cerca de la parte superior del código con el resto de directivas de espacio de nombres.

    using Microsoft.SharePoint;
    using Microsoft.Office.Server.Search.Administration;
    
  3. Para recuperar el objeto Schema para el contexto de búsqueda del proveedor de servicios compartidos (SSP), agregue el siguiente código. Para obtener más información acerca de las distintas formas existentes para recuperar el contexto de búsqueda, consulte Procedimiento: Devolver el contexto de búsqueda para el proveedor del servicio de búsqueda.

    /*
    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);
    
  4. Recupere la colección de propiedades administradas mediante el siguiente código:

    ManagedPropertyCollection properties = sspSchema.AllManagedProperties;
    
  5. Recupere la propiedad administrada que coincida con el nombre especificado en el parámetro args[0].

    ManagedProperty mProp = properties[args[0]]
    
  6. Recupere la lista de propiedades rastreadas de esa propiedad administrada y escriba el nombre de categoría y el GUID de la propiedad en la consola. Para ello, sustituya los caracteres " < … > " del paso anterior por el código siguiente:

    foreach (CrawledProperty cProp in mProp.GetMappedCrawledProperties(mProp.GetMappings().Count))
    {
    Console.WriteLine(cProp.Name);
    Console.WriteLine(cProp.Propset);
    }
    

Ejemplo

A continuación se muestra el código completo para la muestra de clase de aplicación de la consola.

Requisitos previos

  • Asegúrese de que ya se haya creado un proveedor de servicios compartidos.

Referencias del proyecto

Antes de ejecutar este ejemplo, agregue las siguientes referencias de proyecto al proyecto de código de aplicación de consola:

  • 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());
            }
        }
    }
}

Vea también

Otros recursos

Introducción al modelo de objetos de administración de búsqueda
Administración de metadatos
Procedimiento para recuperar las propiedades administradas para un proveedor de servicios compartidos
Procedimiento para crear una propiedad administrada
Procedimiento para eliminar una propiedad administrada