FileRecordSequence.ReadLogRecords Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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 .