0

クラス EventLogReader(eventLogQuery) を使用して、約 100 000 レコードを持つサーバーからイベントログを読み取ろうとしています。

ページネーションを使用していますが、各ページには画面に 25 レコードしか表示されません。したがって、最初のページの全レコードから 25 レコードを読み取り、2 ページ目の次の 25 レコードなどを読み取ります。

私の質問は、その eventLogQuery が原因で影響を受ける行の合計など、以下のスニペットの合計レコード数を取得する方法です。

EventLogReader reader = new 
EventLogReader(eventLogQuery);
                reader.Seek(SeekOrigin.Begin, filter.PageStart);

eventLogs.TotalLogs = **totalRowsAffected**;                    
EventRecord eventInstance = reader.ReadEvent();

int i = filter.PageSize;
while (eventInstance != null && i-- > 0)
{
 try
 {
  eventLogs.Entries.Add(new EventLogData
  {
   Type = eventInstance.LevelDisplayName,
   Source = eventInstance.ProviderName,
   Time = eventInstance.TimeCreated,
   Category = eventInstance.TaskDisplayName,
   EventId = eventInstance.Id,
   User = eventInstance.UserId != null ? eventInstance.UserId.Value : "",
   Computer = eventInstance.MachineName,
   Message = eventInstance.FormatDescription(),
   FullXml = eventInstance.ToXml()
  });
 }catch{}
eventInstance = reader.ReadEvent();
}
}
return eventLogs;
4

1 に答える 1