我试图从服务器上的事件日志中读取..我当前的代码正在工作..

但是我担心的是,当事件中有成千上万的条目时,加载页面会花费更长的时间吗?

这是我的工作代码

ArrayList chromeEntries = new ArrayList();
        EventLog eventLog = new EventLog("Application", ".");
        foreach (EventLogEntry logEntry in eventLog.Entries)
        {
            if (logEntry.Source.Equals("Application Error"))
            {
                chromeEntries.Add(logEntry.TimeWritten);
            }
        }
        GridView1.DataSource = chromeEntries;
        GridView1.DataBind();


我想在源名称为“ Application Error”的应用程序日志中显示时间条目。
我唯一关心的是每个...我的担忧有效吗?或上面的代码就可以了。

有什么建议么

谢谢

好的,我尝试了这个

EventLog eventLog = new EventLog("Application", ".", "Application Error");
Label1.Text = eventLog.Entries.Count.ToString();


但它会计算整个条目,而不仅仅是对应用程序错误进行计数

最佳答案

如果有成千上万的条目,则加载页面绝对会花费更长的时间。您可能要考虑使用WMI to query the log而不是仅遍历所有内容。

关于c# - 读取事件日志,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2274793/

10-12 05:23