SPHealthReportsList - Classe

Représente une liste des rapports Analyseur d’intégrité SharePoint .

Hiérarchie d’héritage

System.Object
  Microsoft.SharePoint.SPSecurableObject
    Microsoft.SharePoint.SPList
      Microsoft.SharePoint.Administration.Health.SPHealthReportsList

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

Syntaxe

'Déclaration
<SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel := True)> _
Public NotInheritable Class SPHealthReportsList _
    Inherits SPList _
    Implements IDisposable
'Utilisation
Dim instance As SPHealthReportsList
[SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel = true)]
public sealed class SPHealthReportsList : SPList, 
    IDisposable

Remarques

Cette classe représente la liste des Rapports de santé dans la section de surveillance de l'Administration centrale. Lors de l'exécution d'une règle d'intégrité Analyseur d’intégrité SharePoint crée un rapport d'état et l'ajoute à la liste des Rapports de santé . L'affichage par défaut de cette liste affiche uniquement les éléments qui ont échoué la vérification d'état la plus récente.

Vous pouvez accéder à la liste des Rapports d'état par le biais de la propriété statique Local . Une fois que vous avez une instance de la classe SPHealthReportsList , vous pouvez interroger la liste comme vous le feriez pour n'importe quel objet SPList .

Important

L'objet SPHealthReportsList retourné par la propriété Local utilise des ressources non managées. Vous êtes chargé de libérer ces ressources. Une façon de le faire consiste à appeler la méthode Dispose() lorsque vous n'avez plus l'objet.

Exemples

L'exemple suivant est une application console simple qui imprime le titre, la date et le statut de chaque rapport dans la liste Rapports sur la santé de la batterie de serveurs. Notez que pour accéder à la liste de Rapports sur la santé , le serveur local doit être joint à la batterie de serveurs.

using System;
using Microsoft.SharePoint;
using Microsoft.SharePoint.Administration;
using Microsoft.SharePoint.Administration.Health;

namespace Test
{
    class Program
    {
        static void Main(string[] args)
        {
            if (SPFarm.Joined)
            {
                using (SPHealthReportsList list = SPHealthReportsList.Local)
                {
                    // Get a collection of health reports in date order.
                    SPQuery query = new SPQuery();
                    query.Query = "<OrderBy><FieldRef Name=\"Created\" /></OrderBy>";
                    SPListItemCollection reports = list.GetItems(query);

                    // Print the title, date, and status for each item.
                    foreach (SPListItem report in reports)
                    {
                        Console.WriteLine("\n\n{0} \nReport Date: {1} \nStatus: {2}",
                            report[SPBuiltInFieldId.LinkTitleNoMenu].ToString(),
                            report[SPBuiltInFieldId.Created].ToString(),
                            report[SPBuiltInFieldId.HealthReportSeverity].ToString());
                    }
                }
            }
            Console.Write("\nPress ENTER to continue...");
            Console.Read();
        }
    }
}
Imports System
Imports Microsoft.SharePoint
Imports Microsoft.SharePoint.Administration
Imports Microsoft.SharePoint.Administration.Health

Module Test

    Sub Main()

        If SPFarm.Joined Then

            Using list As SPHealthReportsList = SPHealthReportsList.Local

                ' Get a collection of health reports in date order.
                Dim query As SPQuery = New SPQuery()
                query.Query = "<OrderBy><FieldRef Name='Created' /></OrderBy>"
                Dim reports As SPListItemCollection = list.GetItems(query)

                ' Print the title, date, and status for each item.
                Dim report As SPListItem
                For Each report In reports
                    Console.WriteLine(vbCrLf + vbCrLf + _
                                      report(SPBuiltInFieldId.LinkTitleNoMenu).ToString())
                    Console.WriteLine("Report Date: {0}", _
                                      report(SPBuiltInFieldId.Created).ToString())
                    Console.WriteLine("Status: {0}", _
                                      report(SPBuiltInFieldId.HealthReportSeverity).ToString())
                Next

            End Using
        End If
        Console.Write(vbCrLf + "Press ENTER to continue...")
        Console.Read()
    End Sub

End Module

Notes

Pour plus d'informations sur la façon d'utiliser des requêtes de Language-Integrated Query (LINQ) pour récupérer des éléments de liste dans SharePoint Foundation, voir Managing Data with LINQ to SharePoint.

Cohérence de thread

Tous les membres statique (Partagé dans Visual Basic)s publics de ce type sont thread-safe. Cela n’est pas garanti pour les membres d’instance.

Voir aussi

Référence

SPHealthReportsList - Membres

Microsoft.SharePoint.Administration.Health - Espace de noms

SPHealthRulesList

Autres ressources

Working with SharePoint Maintenance Manager