2017-01-12 11 views
0

Моя текущая проблема заключается в том, что я не знаю синтаксиса этих EventLogqueries. Я хочу, чтобы запрос, который дает мне все события прошедшего одной неделиФильтр EventLogReader EventLogQuery, созданный TimeDate

private Result<List<AssetManagementEventlogDTO>> GetEvents() 
    { 
     var eventList = new List<AssetManagementEventlogDTO>(); 
     string queryString = " *"; 
     SecureString pw = new SecureString(); 
     foreach (char c in Password) 
     { 
      pw.AppendChar(c); 
     } 
     EventLogSession session = new EventLogSession(
      IP,        // Remote Computer 
      Domain,         // Domain 
      Username,        // Username 
      pw, 
      SessionAuthentication.Default); 

     EventLogQuery query = new EventLogQuery("Security", PathType.FilePath, queryString); 
     query.Session = session; 
     GetEventlog(query, eventList, AssetManagementEventlogType.Security); 
     query = new EventLogQuery("Application", PathType.FilePath, queryString); 
     query.Session = session; 
     GetEventlog(query, eventList, AssetManagementEventlogType.Application); 
     query = new EventLogQuery("System", PathType.FilePath, queryString); 
     query.Session = session; 
     GetEventlog(query, eventList, AssetManagementEventlogType.System); 
     return Result<List<AssetManagementEventlogDTO>>.AsSuccess(eventList); 
    } 

ответ

0

Ok я получил синтаксис теперь, как это работает:

 var daysAgo7 = DateTime.Now.AddDays(-7); 
     string queryString = $"*[System/TimeCreated/@SystemTime >= '{daysAgo7.ToString("yyyy-MM-dd")}T00:00:00.000000000K']";