Exemple #1
0
        /// <summary>
        /// 部落排行榜
        /// </summary>
        /// <returns></returns>
        public List<Faction> ListFaction()
        {
            string SysName = CacheName.ListFaction.ToString();
            List<Faction> list = null;
            if (SysCache.Contains(SysName))
            {
                list= SysCache.Get(SysName) as List<Faction>;
            }

            if (list != null)
                return list;

            bizFaction bf = new bizFaction();
            list = bf.ListByPass();
            List<Faction> list1;
            int maxAct = (int)list.Max(p => p.Activity);
            int maxScore = (int)list.Max(p => p.FScore - p.PrevScore);
            if (maxScore == 0)
                list1 = list;
            else
                list1 = list.OrderByDescending(p => ((p.Activity * 100 / maxAct)) + (p.FScore - p.PrevScore) * 100 / maxScore).ToList();
            SysCache.Add(SysName, list1, new AbsoluteTime(DateTime.Now.AddHours(1)));
            return list1;
        }
Exemple #2
0
        //
        // GET: /Factions/
        public ActionResult Index(int? id)
        {
            bizFaction bf = new bizFaction();
            List<Faction> list = bf.ListByPass();
            List<Faction> list1;
            if (id == null)
                id = 1;
            ViewData["ID"]=id;
            if (id == 3)
                list1=list.OrderByDescending(p => p.Activity).ToList();
            else if (id == 2)
                list1 = list.OrderByDescending(p => (p.FScore - p.PrevScore)).ToList();
            else
            {
                int maxAct = (int)list.Max(p => p.Activity);
                int maxScore = (int)list.Max(p => p.FScore - p.PrevScore);
                if (maxScore == 0)
                    list1 = list;
                else
                    list1 = list.OrderByDescending(p => ((p.Activity * 100 / maxAct)) + (p.FScore - p.PrevScore) * 100 / maxScore).ToList();
                //list1 = list.OrderByDescending(p => p.Activity  + p.FScore - p.PrevScore).ToList();
            }

            return View(list1);
        }