public ActionResult List()
        {
            PrepareTrainingCheckBLL bll = new PrepareTrainingCheckBLL();

            int subjectId = Code.ExtendHelper.ToInt(Request["SubjectId"]);
            int areaId = Code.ExtendHelper.ToInt(Request["AreaId"]);
            int regionId = Code.ExtendHelper.ToInt(Request["RegionId"]);
            int schoolTypeId = Code.ExtendHelper.ToInt(Request["SchoolTypeId"]);
            int schoolId = Code.ExtendHelper.ToInt(Request["schoolId"]);
            ViewBag.SubjectId = subjectId;
            ViewBag.AreaId = areaId;
            ViewBag.RegionId = regionId;
            ViewBag.SchoolTypeId = schoolTypeId;
            ViewBag.SchoolId = schoolId;

            int statusId = Code.ExtendHelper.ToInt(Request["StatusId"]);
            Dictionary<int, string> dict = new Dictionary<int, string>();
            int[] dictKey = { 2, 3, 4, 5, 6 };
            string[] dictValue = { "等待审核", "通过", "不通过", "已上架", "已下架" };
            for (int i = 0; i < dictKey.Length; i++)
            {
                dict.Add(dictKey[i], dictValue[i]);
            }
            ViewBag.Status = dict;
            ViewBag.StatusId = statusId;

            string keyWords = "";
            if (!string.IsNullOrEmpty(Request["KeyWords"]))
                keyWords = Request["KeyWords"].Trim();
            ViewBag.KeyWords = keyWords;

            Code.SiteCache cache = Code.SiteCache.Instance;
            StringBuilder where = new StringBuilder();
            where.Append("Delflag=0 and Status<>1 and PartitionId=" + cache.LoginInfo.PartitionId);
            if (keyWords != "")
                where.Append(" and Title like '%" + keyWords.Replace("'", "''") + "%'");
            if (areaId > 0)
                where.Append(" and OrganId=" + areaId);
            if (subjectId > 0)
                where.Append(" and " + subjectId + " in (select value from [dbo].[split](Subject,','))");
            if (statusId > 0)
                where.Append(" and Status=" + statusId);
            int recordCount = bll.GetTrainingInfoCount(where.ToString());

            int pageSize = 8, pageIndex;
            int pageCount = (int)Math.Ceiling((double)recordCount / pageSize);
            int.TryParse(Request["PageIndex"], out pageIndex);
            if (pageCount == 0)
            {
                pageIndex = 0;
            }
            else
            {
                if (pageIndex < 1)
                    pageIndex = 1;
                else if (pageIndex > pageCount)
                    pageIndex = pageCount;
            }
            ViewBag.RecordCount = recordCount;
            ViewBag.PageCount = pageCount;
            ViewBag.PageIndex = pageIndex;
            ViewBag.PageSize = pageSize;
            ViewBag.SubjectData = bll.GetSubject();
            ViewBag.AreaData = bll.GetArea();
            ViewBag.RegionData = bll.GetRegion(areaId);
            //ViewBag.SchoolTypeData = bll.GetSchoolType();
            ViewBag.SchoolData = bll.GetSchool(regionId);

            return View(bll.GetTrainingInfoList(pageSize, pageIndex, where.ToString(), "CreateDate desc"));
        }