Starting with version 5.1, the Attunity adapter framework is accessible by means of the Attunity ADO.NET provider.

To work with an adapter, rather than with a database driver, set the 'Adapter' option on the connection string and avoid setting the 'Database' option.

Adapter interactions are invoked just like stored procedures. The code below shows how one can find all of the adapter interactions (now dressed up as procedures) and the parameters of each.

Note that this works for adapters with simple input schema that naturally maps into regular stored procedure invocation.

Code:
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
using System.Data;
using Attunity.Data.AisClient;

namespace AcxSchmeaAdoNet
{
    class Program
    {
        static void Main(string[] args)
        {
            AisConnectionStringBuilder csb = new AisConnectionStringBuilder();

            csb.Adapter = "query";
            csb.DataSource = "localhost"; // Alas, by ADO.NET stanadard used in place of 'Server'
            csb.Port = 2551;
            csb.Workspace = "navigator";

            AisConnection con = new AisConnection(csb.ToString());

            con.Open();

            // Dislay adapter metadata, procedures = interactions...
            DataTable procedures = con.GetSchema("procedures");
            foreach (DataRow procedure in procedures.Rows)
            {
                // Each row has one column: PROCEDURE_NAME

                // Could use procedure["PROCEDURE_NAME"].ToString() but using ordinal is faster...
                string procedureName = procedure[0].ToString(); 
                Console.WriteLine("\nParameters for procedure " + procedureName + ":\n");
                
                DataTable parameters = con.GetSchema("procedureParameters", new string[] { procedureName });

                string lineFormat = "{0,-30}{1,-15}{2,-15}";
                Console.WriteLine(String.Format(lineFormat, "Name", "Direction", "Type"));

                foreach (DataRow parameter in parameters.Rows)
                {
                    // Each row has the columns: PROCEDURE_NAME, PARAMETER_NAME, PARAMETER_DIRECTION, PARAMETER_TYPE

                    string parameterName = parameter[1].ToString();
                    string parameterDirection = ((ParameterDirection)parameter[2]).ToString();
                    string parameterType = ((SqlDbType) parameter[3]).ToString();

                    Console.WriteLine(String.Format(lineFormat, parameterName, parameterDirection, parameterType));
                }
            }
        }
    }
}
In this example, we print the interactions of the built-in query adapter. Running this program yields the following output (truncated to save space):

Code:
Parameters for procedure callProcedure:

Name                          Direction      Type
id                            Input          SmallInt
datasource                    Input          SmallInt
name                          Input          SmallInt
outputFormat                  Input          SmallInt
binaryEncoding                Input          SmallInt
metadata                      Input          SmallInt
nullString                    Input          SmallInt
outputRoot                    Input          SmallInt
returnResults                 Input          SmallInt
returnValueName               Input          SmallInt
refinedAutogen                Input          SmallInt

Parameters for procedure ddl:

Name                          Direction      Type
id                            Input          SmallInt
passThrough                   Input          SmallInt
datasource                    Input          SmallInt

Parameters for procedure export:

Name                          Direction      Type
name                          Input          SmallInt
datasource                    Input          SmallInt

Parameters for procedure getSchema:

Name                          Direction      Type
id                            Input          SmallInt
type                          Input          SmallInt
datasource                    Input          SmallInt
owner                         Input          SmallInt
table                         Input          SmallInt
tableType                     Input          SmallInt
column                        Input          SmallInt
procedure                     Input          SmallInt
foreignOwner                  Input          SmallInt
foreignTable                  Input          SmallInt
nativeTables                  Input          SmallInt

Parameters for procedure localCopy:

Name                          Direction      Type
id                            Input          SmallInt
datasource                    Input          SmallInt
table                         Input          SmallInt