/// <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; }
// // 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); }