LogRecordSequence.ReadLogRecords Method (SequenceNumber, LogRecordEnumeratorType)

 

Returns an enumerable collection of records in the sequence. This method cannot be inherited.

Namespace:   System.IO.Log
Assembly:  System.IO.Log (in System.IO.Log.dll)

public IEnumerable<LogRecord> ReadLogRecords(
	SequenceNumber start,
	LogRecordEnumeratorType logRecordEnum
)

Parameters

start
Type: System.IO.Log.SequenceNumber

The sequence number of the first record where the reading starts.

logRecordEnum
Type: System.IO.Log.LogRecordEnumeratorType

A valid LogRecordEnumeratorType value that specifies the manner (that is, forward or backward) in which records should be read from a LogRecordSequence.

Return Value

Type: System.Collections.Generic.IEnumerable<LogRecord>

An enumerable collection of records in the sequence.

Exception Condition
ArgumentException

start is not valid for this sequence.

-or-

logRecordEnum is invalid.

-or-

The specified element was not found in the collection.

ArgumentOutOfRangeException

start is not between the base and last sequence numbers of this sequence.

IOException

The request could not be performed because of an unexpected I/O exception.

-or-

The request could not be performed because of an I/O device error.

-or

The buffer size used to write the log record is larger than the buffer size being used to read it.

-or-

The record sequence is corrupted.

-or-

The specified log file format or version is invalid.

-or-

The record was written with an incompatible version of the record sequence.

InvalidOperationException

The operation is invalid because the enumeration has not been started. A call to MoveNext must be made.

ObjectDisposedException

The method was called after the sequence has been disposed of.

OutOfMemoryException

There is not enough memory to continue the execution of the program.

UnauthorizedAccessException

Access for the specified log sequence is denied by the operating system.

This method returns an enumerable collection of records in the sequence. The order of the enumerated records depends on the value of the logRecordEnum parameter.

This example shows how to use ReadLogRecords in a 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);
}

.NET Framework
Available since 3.0
Return to top
Show: