Пример #1
0
        public static void Add(string sessionName, int expiration)
        {
            List <ExpirationSolution> list = DataSessionManager.GetData <List <ExpirationSolution> >(KEY, true);
            bool done = false;

            if (list != null)
            {
                int cnt = list.Count;
                for (int i = 0; i < cnt; i++)
                {
                    var it = list[i];
                    if (it.SessionName.Equals(sessionName))
                    {
                        it.StarDate = DateTime.Now;
                        it.Minutes  = expiration;
                        done        = true;
                        break;
                    }
                }
            }
            else
            {
                list = new List <ExpirationSolution>();
            }
            if (!done)
            {
                list.Add(new ExpirationSolution
                {
                    StarDate    = DateTime.Now,
                    Minutes     = expiration,
                    SessionName = sessionName
                });
            }
            DataSessionManager.SetData(KEY, list);
        }
Пример #2
0
        public static void Solve()
        {
            var lastRun = DataSessionManager.GetData <DateTime?>(KEY2);

            if (lastRun == null)
            {
                DataSessionManager.SetData(KEY2, DateTime.Now);
            }
            else
            {
                var tt = DateTime.Now - (DateTime)lastRun;
                //10 phut chay 1 lan
                if (tt.Minutes > 10)
                {
                    List <ExpirationSolution> list = DataSessionManager.GetData <List <ExpirationSolution> >(KEY, true);
                    if (list != null)
                    {
                        List <ExpirationSolution> list2 = new List <ExpirationSolution>();
                        int cnt = list.Count;
                        for (int i = 0; i < cnt; i++)
                        {
                            var it = list[i];
                            var t  = DateTime.Now - it.StarDate;
                            if (t.Minutes >= it.Minutes)
                            {
                                DataSessionManager.RemoveData(it.SessionName);
                                continue;
                            }
                            list2.Add(it);
                        }
                        if (list2.Count > 0)
                        {
                            DataSessionManager.SetData(KEY, list2);
                        }
                    }
                    DataSessionManager.SetData(KEY2, DateTime.Now);
                }
            }
        }