private static List <InProcessUsersBL> BuildFromTable(DataTable dtTable) { List <InProcessUsersBL> list = new List <InProcessUsersBL>(); if (dtTable != null) { foreach (DataRow dr in dtTable.Rows) { InProcessUsersBL thisMember = new InProcessUsersBL(dr); list.Add(thisMember); } } return(list); }
public int CompareTo(InProcessUsersBL au2, String comparisonType) { String baseComparisonType = comparisonType; Int32 compareResult = 0; Int32 descFlag = 1; //-1 for descending, + 1 for ascending, multiply by compare result String name = String.Empty; String au2Name = String.Empty; if (comparisonType.Contains("DESC")) { descFlag = -1; string[] compArr = comparisonType.Split(new Char[] { ' ' }); if (compArr.Length > 0) { baseComparisonType = compArr[0]; } } switch (comparisonType) { case "PhoneASC": descFlag = 1; compareResult = strPhone.CompareTo(au2.strPhone); break; case "PhoneDESC": descFlag = -1; compareResult = strPhone.CompareTo(au2.strPhone); break; case "NameASC": descFlag = 1; compareResult = strUserName.CompareTo(au2.strUserName); break; case "NameDESC": descFlag = -1; compareResult = strUserName.CompareTo(au2.strUserName); break; case "DateInASC": descFlag = 1; if (null != dtInDate && null != au2.dtInDate) { compareResult = dtInDate.Value.CompareTo(au2.dtInDate.Value); } break; case "DateInDESC": descFlag = -1; if (null != dtInDate && null != au2.dtInDate) { compareResult = dtInDate.Value.CompareTo(au2.dtInDate.Value); } break; case "DateOutASC": descFlag = 1; if (null != dtOutDate && null != au2.dtOutDate) { compareResult = dtOutDate.Value.CompareTo(au2.dtOutDate.Value); } break; case "DateOutDESC": descFlag = -1; if (null != dtOutDate && null != au2.dtOutDate) { compareResult = dtOutDate.Value.CompareTo(au2.dtOutDate.Value); } break; case "EmailASC": descFlag = 1; compareResult = strEmail.CompareTo(au2.strEmail); break; case "EmailDESC": descFlag = -1; compareResult = strEmail.CompareTo(au2.strEmail); break; case "UpdatedDateASC": descFlag = 1; if (null != dtUpdatedDate && null != au2.dtUpdatedDate) { compareResult = dtUpdatedDate.Value.CompareTo(au2.dtUpdatedDate.Value); } break; case "UpdatedDateDESC": descFlag = -1; if (null != dtUpdatedDate && null != au2.dtUpdatedDate) { compareResult = dtUpdatedDate.Value.CompareTo(au2.dtUpdatedDate.Value); } break; case "DateASC": descFlag = 1; if (null != dtUpdatedDate && null != au2.dtUpdatedDate) { compareResult = dtUpdatedDate.Value.CompareTo(au2.dtUpdatedDate.Value); } break; case "DateDESC": descFlag = -1; if (null != dtUpdatedDate && null != au2.dtUpdatedDate) { compareResult = dtUpdatedDate.Value.CompareTo(au2.dtUpdatedDate.Value); } break; default: descFlag = 1; compareResult = strUserName.CompareTo(au2.strUserName); break; } return(compareResult * descFlag); //desc flag of -1 returns negative result for descending sort }