コード例 #1
0
        protected void gvPrereqCart_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            List <int>       prereqIDlist     = (List <int>)Session["selectedPrereq"];
            int              id               = Convert.ToInt32(e.CommandArgument);
            Course_elearnDAO ceDAO            = new Course_elearnDAO();
            List <int>       allLinkedCourses = ceDAO.getAllCourseLinkedToPrerequisite(id);

            foreach (int linkedID in allLinkedCourses)
            {
                if (prereqIDlist.Contains(linkedID))
                {
                    prereqIDlist.Remove(linkedID);
                }
            }
            prereqIDlist.Remove(id);
            Session["selectedPrereq"] = prereqIDlist;
            var itemIDs = string.Join(",", ((IList <int>)Session["selectedPrereq"]).ToArray());

            var sqlQueryCourseList = "";

            if (itemIDs.Length > 0)
            {
                sqlQueryCourseList = String.Format("SELECT * FROM [Elearn_course] ec INNER JOIN [Elearn_courseCategory] ecc ON ec.categoryID = ecc.categoryID WHERE ec.status='active' and ec.start_date<=getDate() and ec.expiry_date>=getDate() and ec.elearn_courseID NOT IN ({0}) and ec.courseType='Online Learning'", itemIDs);
            }
            else
            {
                sqlQueryCourseList = "SELECT * FROM [Elearn_course] ec INNER JOIN [Elearn_courseCategory] ecc ON ec.categoryID = ecc.categoryID WHERE ec.status='active' and ec.start_date<=getDate() and ec.expiry_date>=getDate() and ec.courseType='Online Learning'";
            }
            SqlDataSource1.SelectCommand = sqlQueryCourseList;
            gvPrereq.DataSource          = SqlDataSource1;
            gvPrereq.DataBind();

            gvPrereq.UseAccessibleHeader = true;

            if (gvPrereq.Rows.Count > 0)
            {
                gvPrereq.HeaderRow.TableSection = TableRowSection.TableHeader;
            }

            var sqlQuery = "";

            if (itemIDs.Length > 0)
            {
                sqlQuery = String.Format("SELECT * FROM [Elearn_course] WHERE [elearn_courseID] IN ({0})", itemIDs);
            }
            else
            {
                sqlQuery = "SELECT * FROM [Elearn_course] WHERE [elearn_courseID] = -1";
            }

            SqlDataSourcePrereqCart.SelectCommand = sqlQuery;
            gvPrereqCart.DataSource = SqlDataSourcePrereqCart;
            gvPrereqCart.DataBind();
        }
コード例 #2
0
        protected List <int> getAllPostRequisiteCourses(int courseID)
        {
            List <int>       toReturn             = new List <int>();
            Course_elearnDAO ceDAO                = new Course_elearnDAO();
            List <int>       currentPostRequisite = ceDAO.getAllCourseLinkedToPrerequisite(courseID);

            foreach (int currentCourseID in currentPostRequisite)
            {
                toReturn.Add(currentCourseID);
                List <int> innerList = getAllPostRequisiteCourses(currentCourseID);
                if (innerList.Count > 0)
                {
                    foreach (int innerListCourseID in innerList)
                    {
                        toReturn.Add(innerListCourseID);
                    }
                }
            }
            return(toReturn);
        }