Compartir a través de


del método ManagedProperty.Delete

Elimina la propiedad administrada del esquema de búsqueda.

Espacio de nombres:  Microsoft.Office.Server.Search.Administration
Ensamblado:  Microsoft.Office.Server.Search (en Microsoft.Office.Server.Search.dll)

Sintaxis

'Declaración
Public Sub Delete
'Uso
Dim instance As ManagedProperty

instance.Delete()
public void Delete()

Comentarios

Puede llamar al método Delete sólo para una propiedad administrada con ninguna asignación; Si todavía se rastrean las propiedades asignadas a la propiedad administrada, se produce un error con este método.

Para evitar este error, llame al método DeleteAllMappings antes de llamar al método Delete .

También debe comprobar que la propiedad administrada se puede eliminar, compruebe el valor de la propiedad DeleteDisallowed . Si esta propiedad es true, no se puede eliminar la propiedad administrada del esquema de búsqueda.

Ejemplos

En el ejemplo de código siguiente se elimina una propiedad administrada del esquema de búsqueda. Para una muestra y una explicación del código más completa, consulte How to: Delete a Managed Property.

Prerequisites

Asegúrese de que el proveedor de servicios compartidos ya está creado.

Project References

Antes de ejecutar este ejemplo, agregue las siguientes referencias de proyecto al proyecto de código de la 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 DeleteManagedPropertiesSample
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
   //Replace <ManagedPropertyName> with the name of the property to delete.
   string strName = "<ManagedPropertyName>";
    //Replace <SiteName> with the name of a site using the Shared Service Provider.
   string strURL = "http://<SiteName>";
                Schema sspSchema = new Schema(SearchContext.GetContext(new SPSite(strURL)));
                ManagedPropertyCollection properties = sspSchema.AllManagedProperties;
                foreach (ManagedProperty property in properties)
                {
                    if (property.Name == strName)
                    {
                        if (property.DeleteDisallowed)
                        {
                            Console.WriteLine("DeleteDisallowed enabled for " + strName + ".  Delete failed.");
  return;
                        }

                        property.DeleteAllMappings();
                        property.Delete();
                        Console.WriteLine(strName + " deleted.");
                        return;
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }
        }
    }
}

Vea también

Referencia

clase ManagedProperty

Miembros ManagedProperty

Espacio de nombres Microsoft.Office.Server.Search.Administration