public async Task RecordLog(Log.LogProgram program, Log.LogLevel level, string message, string detail = null) { Log log = new Log { Program = program, Level = level, Message = message, Detail = detail }; ctx.Logs.Add(log); await ctx.SaveChangesAsync(); }
public async Task <dynamic> GetLogs(Log.LogProgram program, DateTime date, int?count) { IQueryable <Log> linq = ctx.Logs.Where(p => p.Program == program && SqlFunctions.DateDiff("day", p.DateTime, date) == 0) .OrderByDescending(p => p.Id); if (count != null) { linq = linq.Take((int)count); } return(await linq.Select(p => new { Level = p.Level.ToString(), p.Message, p.Detail, p.DateTime }).ToListAsync()); }