LogRecordSequence.ReadLogRecords 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
시퀀스에 있는 레코드의 열거 가능한 컬렉션을 반환합니다. 이 메서드는 상속될 수 없습니다.
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
이 이 시퀀스의 기준 시퀀스 번호와 마지막 시퀀스 번호 사이에 있지 않은 경우
예기치 못한 I/O 예외 때문에 요청을 수행할 수 없는 경우
또는
I/O 디바이스 오류 때문에 요청을 수행할 수 없는 경우
-또는-
로그 레코드 쓰기에 사용된 버퍼 크기가 로그 레코드 읽기에 사용되는 버퍼 크기보다 큰 경우
또는
레코드 시퀀스가 손상된 경우
또는
지정된 로그 파일 형식이나 버전이 잘못된 경우
또는
호환되지 않는 버전의 레코드 시퀀스를 사용하여 레코드를 쓴 경우
열거형이 시작되지 않았기 때문에 연산이 잘못된 경우. 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
값에 따라 달라집니다.
적용 대상
.NET