FileRecordSequence.ReadLogRecords Método

Definición

Devuelve una colección enumerable de registros en la secuencia. Este método no se puede heredar.

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)

Parámetros

start
SequenceNumber

Número de secuencia del primer registro donde comienza la lectura.

logRecordEnum
LogRecordEnumeratorType

Valor válido LogRecordEnumeratorType que especifica la manera (es decir, hacia delante o hacia atrás) en la que se deben leer los registros de .LogRecordSequence

Devoluciones

Colección enumerable de registros en la secuencia.

Implementaciones

Excepciones

Uno o varios de los argumentos están fuera del intervalo.

No se puede realizar la operación porque la secuencia de registros se abrió con acceso de solo escritura.

La secuencia de registros está dañada.

O bien

El registro se escribió con una versión incompatible de la secuencia de registros.

La enumeración ha finalizado.

O bien

No se ha iniciado la enumeración. Se debe realizar una llamada a MoveNext() .

Se llamó al método después de eliminar la secuencia.

No hay memoria suficiente para continuar con la ejecución del programa.

Ejemplos

En el ejemplo siguiente se muestra cómo puede usar este método para leer los registros de una secuencia de registro.

// 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

Comentarios

Este método devuelve una colección enumerable de registros en la secuencia. El orden de los registros enumerados depende del valor del logRecordEnum parámetro .

Se aplica a