public static drGeneric_3Strings GetStudentAssignmentandDueDate(List<IMAvailableStudent> studentList)
 {
     var newSortXref = new drGeneric_3Strings();
     foreach (var std in studentList)
     {
         newSortXref.Add(std.ID.ToString(), std.AssignmentDate.ToString(), std.DueDate.ToString());
     }
     return newSortXref;
 }
        protected void RadButtonUpdate_Click(object sender, EventArgs e)
        {
            var alignmentId = int.Parse(ddlAlignments.SelectedValue);
            var newSortXref = new drGeneric_3Strings();
            var schoolYrEarned = new drGeneric_3Strings();
            var credentialComments = new drGeneric_3Strings();
            newSortXref.Clear();
            schoolYrEarned.Clear();
            foreach (GridDataItem gridDataItem in gridStudentCredentials.Items)
            {
                if (gridDataItem is GridDataItem)
                {
                    CheckBox cbEarned = (CheckBox)gridDataItem.FindControl("chkEarned");
                    if (cbEarned.Checked)
                    {
                        newSortXref.Add(gridStudentCredentials.MasterTableView.DataKeyValues[gridDataItem.ItemIndex]["CredentialID"].ToString(),
                            (((Telerik.Web.UI.RadDatePicker)(gridDataItem.FindControl("rdpEarnedDate"))).DbSelectedDate == null ? null : ((Telerik.Web.UI.RadDatePicker)(gridDataItem.FindControl("rdpEarnedDate"))).DbSelectedDate.ToString()),
                            (((Telerik.Web.UI.RadDatePicker)(gridDataItem.FindControl("rdpExpirationDate"))).DbSelectedDate == null ? null : ((Telerik.Web.UI.RadDatePicker)(gridDataItem.FindControl("rdpExpirationDate"))).DbSelectedDate.ToString()));

                        schoolYrEarned.Add(gridStudentCredentials.MasterTableView.DataKeyValues[gridDataItem.ItemIndex]["CredentialID"].ToString()
                            , (gridDataItem.FindControl("cmbYear") as DropDownList).SelectedValue, ""
                            );

                        /*Add comment parameter here*/
                        string hashKey = _selectedStudent.ID.ToString() + "_" + (gridStudentCredentials.MasterTableView.DataKeyValues[gridDataItem.ItemIndex]["CredentialID"]).ToString();
                        DataSet ds = GetStudentComments(hashKey, Convert.ToInt32(gridStudentCredentials.MasterTableView.DataKeyValues[gridDataItem.ItemIndex]["ID"]), _selectedStudent.ID, System.Convert.ToInt32(gridStudentCredentials.MasterTableView.DataKeyValues[gridDataItem.ItemIndex]["CredentialID"]));
                        if (ds != null && ds.Tables.Count > 1)
                            foreach (DataRow dr in ds.Tables[1].Rows)
                            {
                                credentialComments.Add(dr["ID"].ToString(), dr["CredentialID"].ToString(), dr["CommentText"].ToString());
                            }
                    }
                }
            }

            foreach (string[] crdparam in newSortXref)
            {
                crdparam[2] = (crdparam[2] == null || crdparam[2] == "") ? "" : crdparam[2];
            }

            bool isSuccess = Thinkgate.Base.Classes.Credentials.SaveCredentialForStudent(_selectedStudent.ID, SessionObject.LoggedInUser.Page, newSortXref, credentialComments, schoolYrEarned, alignmentId);
            if (isSuccess)
            {
                ScriptManager.RegisterStartupScript(this, GetType(), "UpdateStudentsCredentials", "closeSaveWindow();", true);
            }
        }