1

我試圖從服務器上的事件日誌讀取..我目前的代碼工作..讀取事件日誌

,但我擔心的是,當有成千上萬的事件條目,將它需要更長的時間加載頁面?

這裏是我工作的代碼

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(); 

我想以顯示其中有「應用程序錯誤」的源名稱的應用程序日誌的時間條目.. 我唯一關心的是每個...? ?我的關心是否有效?還是上面的代碼就好了..

任何建議

感謝

確定我想這

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

但它計算整個項目,而不是僅僅計數條目應用程序錯誤

回答

5

如果有成千上萬的條目,加載頁面將會花費更長的時間。您可能要考慮使用WMI to query the log,而不是遍歷所有內容。

+0

我期待在C#中的東西......我期待,但如果u有任何很好的例子,請讓我知道..感謝.. – user175084

+0

你可以只取碼在上面提到的鏈接,並通過它通過一個VB .net-> C#轉換器就像這樣。 http://www.carlosag.net/Tools/CodeTranslator/ –