public List <string> GetDistinctData(string table, string column, GetDistinctParameters distincParameters) { List <string> distinctList = new List <string>(); GenericDAO d = new GenericDAO(motor); try { motor.OpenConnection(); distinctList = d.GetDistinctData(table, column, distincParameters); motor.CloseConnection(); return(distinctList); } catch (Exception ex) { motor.CloseConnection(); distinctList.Add(ex.Message); } return(distinctList); }
public List <string> GetDistinctData(string tableName, string column, GetDistinctParameters parameters) { string rawQuery = "select distinct {0} ({1}) as Result from {2} {3} order by 1 {4}"; string query = ""; if (parameters == null) { query = string.Format(rawQuery, "", column, tableName, "", "ASC"); } else { string topRows = " top " + parameters.TopRows.ToString(); string where = ""; switch (parameters.FilterToApply) { case GetDistinctParameters.FilterType.NoFilter: break; case GetDistinctParameters.FilterType.Contains: where = string.Format("where {0} like ('%{1}%')", column, parameters.Filter); break; case GetDistinctParameters.FilterType.StartWith: where = string.Format("where {0} like ('{1}%')", column, parameters.Filter); break; case GetDistinctParameters.FilterType.EndsWith: where = string.Format("where {0} like ('%{1}')", column, parameters.Filter); break; } query = string.Format(rawQuery, topRows, column, tableName, where, "ASC"); } //string query = string.Format("select distinct({0}) as Result from {1} order by 1", column, tableName); List <string> myData = GetDataAsString(query); return(myData); }