public void CleanOldWorkpieceInfos(DateTime beforeDateTime) { var currentDir = this.GetType().Assembly.GetAssemblyDirectoryPath(); var imageStoreDir = currentDir.CombilePath("ImageStore"); var dirs = Directory.GetDirectories(imageStoreDir).Select(x => new DirectoryInfo(x)); foreach (var dir in dirs) { if (!dir.Name.Contains("-") || dir.Name.Length != 10) { continue; } var ss = dir.Name.Split('-'); var y = ss[0].ToInt32(); var m = ss[1].ToInt32(); var d = ss[2].ToInt32(); var day = new DateTime(y, m, d); if (day < beforeDateTime) { dir.Delete(true); } } var olds = WorkpieceInfoRepository.GetQuery().Where(x => x.InspectDateTime < beforeDateTime); foreach (var old in olds) { WorkpieceInfoRepository.Delete(old); } WorkpieceInfoRepository.UnitOfWork.Commit(); }
private IQueryable <WorkpieceInfo> GetWorkpieceInfosInRange(DateTime fromDateTime, DateTime toDateTime) { var all = WorkpieceInfoRepository.GetMany(x => x.InspectDateTime >= fromDateTime && x.InspectDateTime < toDateTime); return(all); }