Partager via


ManagedProperty.Delete - Méthode

Supprime la propriété gérée à partir du schéma de recherche.

Espace de noms :  Microsoft.Office.Server.Search.Administration
Assembly :  Microsoft.Office.Server.Search (dans Microsoft.Office.Server.Search.dll)

Syntaxe

'Déclaration
Public Sub Delete
'Utilisation
Dim instance As ManagedProperty

instance.Delete()
public void Delete()

Remarques

La méthode Delete peut être appelée uniquement pour une propriété gérée avec aucun mappage ; Il est toujours les propriétés analysées mappées à la propriété gérée, une erreur se produit avec cette méthode.

Pour éviter cette erreur, appelez la méthode DeleteAllMappings avant d'appeler la méthode Delete .

Vous devez également vérifier que la propriété gérée peut être supprimée en vérifiant la valeur de la propriété DeleteDisallowed . Si cette propriété est true, vous ne pouvez pas supprimer la propriété gérée à partir du schéma de recherche.

Exemples

L'exemple de code suivant supprime une propriété gérée à partir du schéma de recherche. Pour un exemple plus complet et explication du code, voir How to: Delete a Managed Property.

Prerequisites

Vérifiez qu'un fournisseur de services partagés est déjà créé.

Project References

Ajoutez les références de projet suivantes dans le projet de code d'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 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());
            }
        }
    }
}

Voir aussi

Référence

ManagedProperty classe

ManagedProperty - Membres

Microsoft.Office.Server.Search.Administration - Espace de noms