FileRecordSequence.ReadLogRecords Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt eine aufzählbare Auflistung von Datensätzen in der Sequenz zurück. Diese Methode kann nicht geerbt werden.
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)
Parameter
- start
- SequenceNumber
Die Sequenznummer des ersten Datensatzes, in dem der Lesevorgang beginnt.
- logRecordEnum
- LogRecordEnumeratorType
Ein gültiger LogRecordEnumeratorType Wert, der die Art (d. h. vorwärts oder rückwärts) angibt, in der Datensätze aus einem .LogRecordSequence
Gibt zurück
Eine aufzählbare Auflistung von Datensätzen in der Sequenz.
Implementiert
Ausnahmen
Mindestens ein Argument liegt außerhalb des zulässigen Bereichs.
Der Vorgang kann nicht ausgeführt werden, da die Datensatzsequenz mit schreibgeschütztem Zugriff geöffnet wurde.
Die Datensatzsequenz ist beschädigt.
-oder-
Der Datensatz wurde mit einer inkompatiblen Version der Datensatzsequenz geschrieben.
Die Aufzählung wurde beendet.
-oder-
Die Aufzählung wurde nicht gestartet. Ein Anruf MoveNext() muss erfolgen.
Die Methode wurde aufgerufen, nachdem die Sequenz verworfen wurde.
Es ist nicht genügend Arbeitsspeicher vorhanden, um die Ausführung des Programms fortzusetzen.
Beispiele
Das folgende Beispiel zeigt, wie Sie diese Methode verwenden können, um die Datensätze in einer Protokollsequenz zu lesen.
// 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
Hinweise
Diese Methode gibt eine aufzählbare Auflistung von Datensätzen in der Sequenz zurück. Die Reihenfolge der aufgezählten Datensätze hängt vom Wert des logRecordEnum Parameters ab.