Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

SPBackupRestoreConsole.FindItems - Méthode

Obtient les composants spécifiés de SharePoint Foundation à partir de la sauvegarde spécifiée ou d'une opération de restauration.

Espace de noms :  Microsoft.SharePoint.Administration.Backup
Assembly :  Microsoft.SharePoint (dans Microsoft.SharePoint.dll)

public static SPBackupRestoreObjectCollection FindItems(
	Guid id,
	string item
)

Paramètres

id
Type : System.Guid

ID Guid de la SPBackupRestoreConsoleObject qui représente l'opération de sauvegarde ou de restauration.

item
Type : System.String

Le nom d'un composant qui peut être sauvegardé ou restauré ou d'une partie du nom qui correspond à plusieurs composants.

Voici la classe SPBackupRestoreObjectCollection qui est utilisée dans une méthode qui permet de garantir que le nom du composant soumis par un utilisateur unique identifie un seul composant à la partie supérieure de l'arborescence des composants qui seront traités par une sauvegarde ou une restauration. Pour l'exemple complet et une description détaillée de ce dernier, consultez How to: Programmatically Back Up Content.

private static SPBackupRestoreObject EnsureUniqueValidComponentName(SPBackupRestoreSettings settings, ref Guid operationGUID)
{
    SPBackupRestoreObjectCollection list = SPBackupRestoreConsole.FindItems(operationGUID, settings.IndividualItem);
    SPBackupRestoreObject component = null;

    if (list.Count <= 0)
    {
        Console.WriteLine("There is no component with that name. Run again with a new name.");
        Console.WriteLine("Press Enter to continue.");
        Console.ReadLine();
    }
    else if (list.Count > 1)  // The component name specified is ambiguous. Prompt user to be more specific.
    {
        Console.WriteLine("More than one component matches the name you entered.");
        Console.WriteLine("Run again with one of the following:");
        for (int i = 0; i < list.Count; i++)
        {
            Console.WriteLine("\t{0}", list[i].ToString());
        }
        Console.WriteLine("Press Enter to continue.");
        Console.ReadLine();
    }
    else
    {
        component = list[0];
    }

    return component;

}// end EnsureUniqueValidComponentName

L'exemple suivant montre comment utiliser cette méthode dans une application console qui affiche tous les composants de la batterie dans une arborescence.

static void Main(string[] args)
{
    SPBackupSettings settings = (SPBackupSettings)SPBackupRestoreSettings.GetBackupSettings(@"\\server\Backups", "full");
    Guid backup = SPBackupRestoreConsole.CreateBackupRestore(settings);

    SPBackupRestoreObjectCollection list = SPBackupRestoreConsole.FindItems(backup, "Farm");

    DisplayThisAndChildrensNames(list[0],0);

    foreach (SPBackupRestoreObject oBURO in list)
    {
        Console.WriteLine("Name: " + oBURO.DisplayName);
        foreach (SPBackupRestoreObject oBUROchild in oBURO.Children)
        {
            Console.WriteLine("Name: " + oBUROchild.DisplayName);
        }
    }

private static void DisplayThisAndChildrensNames(SPBackupRestoreObject component, Int32 depth)
{
    Int32 currentDepth = 0;
    while (currentDepth < depth)
    {
        Console.Write("\t");
        currentDepth++;
    }
    Console.Write("Name: " + component.DisplayName +"\n");

    foreach (SPBackupRestoreObject oChild in component.Children)
    {
        DisplayThisAndChildrensNames(oChild, depth+1);
    }
}
Afficher: