public void AddParameterValuesForQuery(TDSQueriesTree.QueriesRow queryRow, NameValueCollection searchConfiguration) { DataRow[] parameters = ParametersValues.Select("QueryID = " + queryRow.ID); for (int i = parameters.GetLength(0) - 1; i >= 0; i--) { parameters[i].Delete(); } ParametersValues.AcceptChanges(); for (int i = 0; i < searchConfiguration.Count; i++) { //compose QueryString based on the criteria selected in the interface for (int j = 0; j < searchConfiguration.GetValues(i).Length; j++) { ParametersValuesRow qpValue = _instance.ParametersValues.NewParametersValuesRow(); qpValue.QueryID = queryRow.ID; DataRow[] qpRows = _instance.QueryParameters.Select("Name = '" + searchConfiguration.GetKey(i) + "'"); if (qpRows.GetLength(0) == 1) { qpValue.ParameterID = Byte.Parse(qpRows[0][0].ToString()); qpValue.Value = searchConfiguration.GetValues(i)[j]; _instance.ParametersValues.Rows.Add(qpValue); } } } }