Searching Recent Event Logs with C#

Hi guys,

Today I was looking into event log searching. I run a script that does a chkdsk on reboot but then when the machine boots I want to see the log from that report.

To do this, I search the registry for the most recent event within a certain time period (I choose 1 day).
We can use Linq to make the filtering quite easy.

EventLog el = new EventLog();
el.Log = log;
el.MachineName = ".";

try
{
    var result = (from EventLogEntry elog in el.Entries
                  where (elog.TimeGenerated >= DateTime.Now - new TimeSpan(days, 0, 0, 0))
                  && (elog.Source.ToString().Equals(source))
                  && (elog.EventID == id)
                  orderby elog.TimeGenerated descending
                  select elog).First();
    Console.WriteLine(result.Message);
}
catch (InvalidOperationException)
{
    Console.WriteLine("No results found. ");
}

Cheers to StackOverflow for the basis of this code.