Поделиться через


LogRecordSequence.ReadLogRecords Метод

Определение

Возвращает перечислимую коллекцию записей в последовательности. Этот метод не может быть унаследован.

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)

Параметры

start
SequenceNumber

Порядковый номер первой записи, с которой начинается чтение.

logRecordEnum
LogRecordEnumeratorType

Допустимое значение LogRecordEnumeratorType, указывающее способ (вперед или назад), которым записи должны считываться из LogRecordSequence.

Возвращаемое значение

Перечисляемая коллекция записей в последовательности.

Реализации

Исключения

Значение параметра start недопустимо для этой последовательности.

-или-

logRecordEnum недопустим.

-или-

Указанный элемент не найден в коллекции.

Значение параметра start не лежит между основным и последним порядковыми номерами этой последовательности.

Не удалось выполнить запрос, так как возникла неожиданная ошибка ввода-вывода.

-или-

Выполнить запрос невозможно из-за ошибки устройства ввода-вывода.

или

Размер буфера, используемого для регистрации записи журнала, больше размера буфера, используемого для чтения этой записи.

-или-

Последовательность записей повреждена.

-или-

Указан недопустимый формат или версия файла журнала.

-или-

Запись была сделана с помощью несовместимой версии последовательности записей.

Операция недействительна, поскольку перечисление не запущено. Должен быть вызван метод MoveNext().

Метод был вызван после удаления последовательности.

Недостаточно памяти, чтобы продолжить выполнение программы.

Доступ к заданной последовательности журнала запрещен операционной системой.

Примеры

В этом примере показано, как использовать метод ReadLogRecords в цикле.

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

Комментарии

Этот метод возвращает перечисляемую коллекцию записей в последовательности. Порядок перечисленных записей зависит от значения параметра logRecordEnum.

Применяется к