private string GetUnitNIds(string[] searchString) { string RetVal = ""; string sSql = ""; IDataReader rd; String AllIndicatorNIdsWithData = String.Empty; string FilterClause = string.Empty; //-- Creating Filter Clause (FilterClause may have Multiple like Clauses) // -- Adding each element of SearchString into FilterClause for (int i = 0; i <= searchString.Length - 1; i++) { if (FilterClause.Length > 0) { FilterClause += " OR "; } //change on 18-03-08.If searchString[i] is in quote use equal to (=) in query instead of like // Change on 14-07-08 .Like search instead of equal in case of phrase search. // When search text is written inside double quote. // Use search text after removing quotes from first and last position in like claues if (searchString[i].ToString().StartsWith("'") && searchString[i].ToString().EndsWith("'") && searchString[i].ToString() != "'") { //FilterClause += Indicator.IndicatorName + " =" + DICommon.EscapeWildcardChar(searchString[i]) ; FilterClause += Unit.UnitName + " LIKE '%" + DICommon.EscapeWildcardChar(DICommon.RemoveQuotes(searchString[i].Substring(1, searchString[i].Length - 2))) + "%'"; } else { FilterClause += Unit.UnitName + " LIKE '%" + DICommon.EscapeWildcardChar(DICommon.RemoveQuotes(searchString[i])) + "%'"; } } //Running Query to get IndicatorNId's sSql = this.DBQueries.Unit.GetUnit(FilterFieldType.Search, FilterClause); try { rd = this.DBConnection.ExecuteReader(sSql); RetVal = DI_LibDAL.Connection.DIConnection.GetDelimitedValuesFromReader(rd, Unit.UnitNId); rd.Close(); } catch (Exception ex) { //rd.Close(); } return(RetVal); }