Aracılığıyla paylaş


FileRecordSequence.ReadLogRecords Yöntem

Tanım

Dizideki listelenebilir bir kayıt koleksiyonu döndürür. Bu yöntem devralınamaz.

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)

Parametreler

start
SequenceNumber

Okumanın başladığı ilk kaydın sıra numarası.

logRecordEnum
LogRecordEnumeratorType

Kayıtların bir içinden okunma şekli (ileri veya geri) belirten geçerli LogRecordEnumeratorType bir LogRecordSequencedeğerdir.

Döndürülenler

Dizideki kayıtların numaralandırılabilir koleksiyonu.

Uygulamalar

Özel durumlar

Bir veya daha fazla bağımsız değişken aralık dışında.

Kayıt sırası yalnızca yazma erişimiyle açıldığından işlem gerçekleştirilemiyor.

Kayıt sırası bozuk.

-veya-

Kayıt, kayıt dizisinin uyumsuz bir sürümüyle yazılmıştır.

Numaralandırma sona erdi.

-veya-

Numaralandırma başlatılmadı. Bir çağrı MoveNext() yapılmalıdır.

yöntemi, sıra atıldıktan sonra çağrıldı.

Programın yürütülmesine devam etmek için yeterli bellek yok.

Örnekler

Aşağıdaki örnekte, günlük dizisindeki kayıtları okumak için bu yöntemi nasıl kullanabileceğiniz gösterilmektedir.

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

Açıklamalar

Bu yöntem, dizideki kayıtların numaralandırılabilir bir koleksiyonunu döndürür. Numaralandırılmış kayıtların sırası parametrenin logRecordEnum değerine bağlıdır.

Şunlara uygulanır