FileRecordSequence.ReadLogRecords Méthode

Définition

Retourne une collection dénombrable des enregistrements de la séquence. Cette méthode ne peut pas être héritée.

public:
 virtual System::Collections::Generic::IEnumerable<System::IO::Log::LogRecord ^> ^ ReadLogRecords(System::IO::Log::SequenceNumber start, System::IO::Log::LogRecordEnumeratorType logRecordEnum);
public System.Collections.Generic.IEnumerable<System.IO.Log.LogRecord> ReadLogRecords (System.IO.Log.SequenceNumber start, System.IO.Log.LogRecordEnumeratorType logRecordEnum);
abstract member ReadLogRecords : System.IO.Log.SequenceNumber * System.IO.Log.LogRecordEnumeratorType -> seq<System.IO.Log.LogRecord>
override this.ReadLogRecords : System.IO.Log.SequenceNumber * System.IO.Log.LogRecordEnumeratorType -> seq<System.IO.Log.LogRecord>
Public Function ReadLogRecords (start As SequenceNumber, logRecordEnum As LogRecordEnumeratorType) As IEnumerable(Of LogRecord)

Paramètres

start
SequenceNumber

Numéro de séquence du premier enregistrement à partir duquel démarre la lecture.

logRecordEnum
LogRecordEnumeratorType

Valeur LogRecordEnumeratorType valide qui spécifie le sens de lecture (c'est-à-dire, vers l'avant ou l'arrière) des enregistrements à partir d'une LogRecordSequence.

Retours

Collection dénombrable des enregistrements de la séquence.

Implémente

Exceptions

Un ou plusieurs des arguments sont hors limite.

L'opération ne peut pas être effectuée car la séquence d'enregistrement a été ouverte en écriture seule.

La séquence d'enregistrement est endommagée.

- ou -

L'enregistrement a été écrit avec une version incompatible de la séquence d'enregistrement.

L'énumération est terminée.

- ou -

L'énumération n'a encore été démarré. Un appel à MoveNext() doit être fait.

La méthode a été appelée après la suppression de la séquence.

La mémoire disponible n'est pas suffisante pour continuer l'exécution du programme.

Exemples

L'exemple suivant montre comment utiliser cette méthode pour lire les enregistrements dans une séquence de journal.

// Read the records added to the log.
    public void ReadRecords()
    {
        Encoding enc = Encoding.Unicode;

        Console.WriteLine();

        Console.WriteLine("Reading Log Records...");
        try
        {
            foreach (LogRecord record in this.sequence.ReadLogRecords(this.sequence.BaseSequenceNumber, LogRecordEnumeratorType.Next))
            {
                byte[] data = new byte[record.Data.Length];
                record.Data.Read(data, 0, (int)record.Data.Length);
                string mystr = enc.GetString(data);
                Console.WriteLine("    {0}", mystr);
            }
        }
        catch (Exception e)
        {
            Console.WriteLine("Exception {0} {1}", e.GetType(), e.Message);
        }

        Console.WriteLine();
    }
' Read the records added to the log. 
    Public Sub ReadRecords()
        Dim enc As Encoding = Encoding.Unicode

        Console.WriteLine()

        Console.WriteLine("Reading Log Records...")
        Try
            For Each record In Me.sequence.ReadLogRecords(Me.sequence.BaseSequenceNumber, LogRecordEnumeratorType.Next)
                Dim data(record.Data.Length - 1) As Byte
                record.Data.Read(data, 0, CInt(Fix(record.Data.Length)))
                Dim mystr As String = enc.GetString(data)
                Console.WriteLine("    {0}", mystr)
            Next record
        Catch e As Exception
            Console.WriteLine("Exception {0} {1}", e.GetType(), e.Message)
        End Try

        Console.WriteLine()
    End Sub

Remarques

Cette méthode retourne une collection dénombrable d’enregistrements dans la séquence. L'ordre des enregistrements énumérés dépend de la valeur du paramètre logRecordEnum.

S’applique à