I am trying to run this query:
SELECT * FROM Tabela1 WHERE Pole1 IN (@parameter)
When the window with "choose value" appears, I put: "10, 50" and I receive 0 rows (should be 2).
When I put only "10", or only "50" it works and returns 1 row for each query.
I am using Access 2013 - what am I doing wrong?
using (DbConnection connection = new T())
            {
                connection.ConnectionString = query.DatabaseConnection.ConnectionString;
                using (DbCommand command = connection.CreateCommand())
                {
                    command.CommandText = query.QuerySql.Sql;
                    command.CommandType = CommandType.Text;
                    command.CommandTimeout = query.QuerySql.CommandTimeout;
                    if (query.QuerySql.Parameters != null)
                    {
                        foreach (var parameter in query.QuerySql.Parameters)
                        {
                            var commandParameter = command.CreateParameter();
                            commandParameter.ParameterName = $"@{parameter.Name}";
                            commandParameter.Value = parameter.Value;
                            command.Parameters.Add(commandParameter);
                        }
                    }
I create the query like that:
QuerySql sql = new QuerySql("SELECT * FROM Tabela1 WHERE Pole1 IN(@parameter)", new List<ISqlParameter>()
        {
            new SqlMultiNumberParameter("parameter", new List<string>() { "10", "50" }, "Test parameter")
        });
the parameter.Value returns string like that: "10, 50"
Best regards
Michael
 
     
    