I have a stored procedure that uses the IN statement in the  select condition.
SELECT *
FROM vwCashTransactions
WHERE TransactionTimeStamp BETWEEN '2017-01-30 ' AND '2017-12-01'        
  AND Country IN ('MY', 'BD')
ORDER BY TransactionTimeStamp DESC 
I need to pass the country string from backend code.
This is the code I have written
if (manageCountries != null && manageCountries.Trim().Length > 0)
{
    string[] words = manageCountries.Split(',');
    string queryManageString = "";
    int i = 0;
    foreach (string word in words)
    {
        if (i != 0)
        {
            queryManageString += "','";
        }
        i++;
        queryManageString += "'" + word + "'";
    }
    _DataTable = Global.DatabaseServices.GetTransactionReport("", startPeriod, endPeriod, queryManageString);
Somehow I am not getting the values. I am  sure the issue is with the querymanageString. The way it is built is missing something. Can someone give an idea how I can achieve it?
Here's the code for calling the database:
public DataTable GetTransactionReport(string AccountCode, DateTime FromDate, DateTime ToDate,  string ManagedCountry)
{
    DataTable dataTable = new DataTable();
    SqlCommand sqlCommand = new SqlCommand();
    sqlCommand.CommandText = "[GetTransactionReport]";
    sqlCommand.CommandType = CommandType.StoredProcedure;
    sqlCommand.Parameters.AddWithValue("@AccountCode", AccountCode);
    sqlCommand.Parameters.AddWithValue("@FromDate", FromDate);
    sqlCommand.Parameters.AddWithValue("@ToDate", ToDate);
    sqlCommand.Parameters.AddWithValue("@ManagedCountry", ManagedCountry);
    sqlCommand.CommandTimeout = 300;
    ExecuteQuery(dataTable, sqlCommand);
    sqlCommand.Dispose();
    return dataTable;
}
public int ExecuteQuery(DataTable dt, SqlCommand cmd)
{
    int rowCount = 0;
    SqlDataAdapter da = null;
    try
    {
        if (cmd.Connection == null)
           cmd.Connection = GetSqlConnection(); 
        da = new SqlDataAdapter();
        da.SelectCommand = cmd;
        rowCount = da.Fill(dt);
    }
    catch (Exception ex)
    {
        throw new DatabaseException(ex);
    }
    finally
    {   
        cmd.Connection.Close();
        cmd.Connection.Dispose();
        cmd.Connection = null;
        da.Dispose();
    }
    return rowCount;
}
 
     
    