LogRecordSequence.ReadLogRecords Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Returnerar en uppräkningsbar samling poster i sekvensen. Den här metoden kan inte ärvas.
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)
Parametrar
- start
- SequenceNumber
Sekvensnumret för den första posten där läsningen börjar.
- logRecordEnum
- LogRecordEnumeratorType
Ett giltigt LogRecordEnumeratorType värde som anger det sätt (dvs. framåt eller bakåt) på vilket poster ska läsas från en LogRecordSequence.
Returer
En uppräkningsbar samling poster i sekvensen.
Implementeringar
Undantag
start är inte giltig för den här sekvensen.
-eller-
logRecordEnum är ogiltigt.
-eller-
Det angivna elementet hittades inte i samlingen.
start är inte mellan bas- och sista sekvensnumren i den här sekvensen.
Det gick inte att utföra begäran på grund av ett oväntat I/O-undantag.
-eller-
Det gick inte att utföra begäran på grund av ett I/O-enhetsfel.
-eller
Buffertstorleken som används för att skriva loggposten är större än buffertstorleken som används för att läsa den.
-eller-
Postsekvensen är skadad.
-eller-
Det angivna loggfilsformatet eller versionen är ogiltigt.
-eller-
Posten skrevs med en inkompatibel version av postsekvensen.
Åtgärden är ogiltig eftersom uppräkningen inte har startats. Ett anrop till MoveNext() måste göras.
Metoden anropades efter att sekvensen har tagits bort.
Det finns inte tillräckligt med minne för att fortsätta körningen av programmet.
Åtkomst för den angivna loggsekvensen nekas av operativsystemet.
Exempel
Det här exemplet visar hur du använder ReadLogRecords i en loop.
foreach (LogRecord record in sequence1.ReadLogRecords(sequence1.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);
}
For Each record In sequence1.ReadLogRecords(sequence1.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
Kommentarer
Den här metoden returnerar en uppräkningsbar samling poster i sekvensen. Ordningen på de uppräknade posterna beror på parameterns logRecordEnum värde.