Пример #1
0
        /// <summary>
        /// 新增(间隔分批写入)
        /// </summary>
        /// <param name="mo"></param>
        public static void Insert(LogsVM mo)
        {
            try
            {
                //日志记录
                var cacheLogsKey = "Global_Logs";
                //上次写入的时间
                var cacheLogWriteKey = "Global_Logs_Write";

                if (!(CacheTo.Get(cacheLogsKey) is List <LogsVM> cacheLogs))
                {
                    cacheLogs = new List <LogsVM>();
                }
                cacheLogs.Add(mo);

                var cacheLogWrite = CacheTo.Get(cacheLogWriteKey) as DateTime?;
                if (!cacheLogWrite.HasValue)
                {
                    cacheLogWrite = DateTime.Now;
                }

                if (cacheLogs?.Count > cacheLogCount || DateTime.Now.ToTimestamp() - cacheLogWrite.Value.ToTimestamp() > cacheLogTime)
                {
                    InsertNow(cacheLogs);

                    cacheLogs     = null;
                    cacheLogWrite = DateTime.Now;
                }

                CacheTo.Set(cacheLogsKey, cacheLogs, 3600 * 24 * 30);
                CacheTo.Set(cacheLogWriteKey, cacheLogWrite, 3600 * 24 * 30);
            }
            catch (Exception)
            {
            }
        }
Пример #2
0
 public Logs()
 {
     InitializeComponent();
     lvm         = new LogsVM();
     DataContext = lvm;
 }
Пример #3
0
 public Log()
 {
     InitializeComponent();
     m_logsVM         = new LogsVM();
     this.DataContext = m_logsVM;
 }