优化来自 System.Diagnostics.EventLog 的 LINQ 读取

我在某些计算机上遇到了以下查询的性能问题:


System.Diagnostics.EventLog log = new System.Diagnostics.EventLog("Application");


var entries = log.Entries

    .Cast<System.Diagnostics.EventLogEntry>()

    .Where(x => x.EntryType == System.Diagnostics.EventLogEntryType.Error)

    .OrderByDescending(x => x.TimeGenerated)

    .Take(cutoff)

    .Select(x => new

    {

        x.Index,

        x.TimeGenerated,

        x.EntryType,

        x.Source,

        x.InstanceId,

        x.Message

    }).ToList();

显然ToList()在某些查询中可能会很慢,但是我应该用什么来替换它?


慕后森
浏览 165回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP