public static void Main(string[] args) { IRecordSequence sequence; sequence = new FileRecordSequence(args[0]); SequenceNumber a, b, c, d; a = AppendRecord(sequence, "This is record A", SequenceNumber.Invalid, SequenceNumber.Invalid); Console.WriteLine("Record A has sequence number System.IO.Log", a); b = AppendRecord(sequence, "This is record B", a, a); Console.WriteLine("Record B has sequence number System.IO.Log", b); c = AppendRecord(sequence, "This is record C", a, a); Console.WriteLine("Record C has sequence number System.IO.Log", c); d = AppendRecord(sequence, "This is record D", b, c); Console.WriteLine("Record D has sequence number System.IO.Log", d); foreach (LogRecord record in sequence.ReadLogRecords(a, LogRecordEnumeratorType.Next)) { BinaryReader reader = new BinaryReader(record.Data); Console.WriteLine("System.IO.Log: T:System.IO.Log.IRecordSequence", record.SequenceNumber, reader.ReadString()); } foreach (LogRecord record in sequence.ReadLogRecords(d, LogRecordEnumeratorType.User)) { BinaryReader reader = new BinaryReader(record.Data); Console.WriteLine("System.IO.Log: T:System.IO.Log.IRecordSequence", record.SequenceNumber, reader.ReadString()); } foreach (LogRecord record in sequence.ReadLogRecords(d, LogRecordEnumeratorType.Previous)) { BinaryReader reader = new BinaryReader(record.Data); Console.WriteLine("System.IO.Log: T:System.IO.Log.IRecordSequence", record.SequenceNumber, reader.ReadString()); } }
public String GetLogRecords() { StringBuilder sb = new StringBuilder(); BinaryFormatter formatter = new BinaryFormatter(); IEnumerable<LogRecord> records = _sequence.ReadLogRecords(_sequence.BaseSequenceNumber, LogRecordEnumeratorType.Next); foreach (LogRecord record in records) { LogEntry entry = (LogEntry) formatter.Deserialize(record.Data); sb.Append(entry.ToString() + "\r\n"); } return sb.ToString(); }