コード例 #1
0
        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();
        }
コード例 #2
0
        private IQueryable <WorkpieceInfo> GetWorkpieceInfosInRange(DateTime fromDateTime, DateTime toDateTime)
        {
            var all = WorkpieceInfoRepository.GetMany(x => x.InspectDateTime >= fromDateTime &&
                                                      x.InspectDateTime < toDateTime);

            return(all);
        }