LogRecordSequence.ReadLogRecords Método

Definição

Devolve uma coleção enumerável de registos na sequência. Este método não pode ser herdado.

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

O número de sequência do primeiro registo onde a leitura começa.

logRecordEnum
LogRecordEnumeratorType

Um valor válido LogRecordEnumeratorType que especifica a forma (isto é, para frente ou para trás) em que os registos devem ser lidos a partir de um LogRecordSequence.

Devoluções

Uma coleção enumerável de registos na sequência.

Implementações

Exceções

start não é válido para esta sequência.

-ou-

logRecordEnum é inválido.

-ou-

O elemento especificado não foi encontrado na coleção.

start não está entre os números base e último desta sequência.

O pedido não pôde ser realizado devido a uma exceção inesperada de I/O.

-ou-

O pedido não pôde ser realizado devido a um erro no dispositivo de E/S.

-ou

O tamanho do buffer usado para escrever o registo de log é maior do que o tamanho do buffer usado para o ler.

-ou-

A sequência de registos está corrompida.

-ou-

O formato ou versão do ficheiro de registo especificado é inválido.

-ou-

O disco foi escrito com uma versão incompatível da sequência de discos.

A operação é inválida porque a enumeração ainda não foi iniciada. É preciso fazer uma chamada MoveNext() .

O método era chamado depois de a sequência ter sido eliminada.

Não há memória suficiente para continuar a execução do programa.

O acesso para a sequência de registo especificada é negado pelo sistema operativo.

Exemplos

Este exemplo mostra como usar ReadLogRecords num 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

Observações

Este método devolve uma coleção enumerável de registos na sequência. A ordem dos registos enumerados depende do valor do logRecordEnum parâmetro.

Aplica-se a