GetFillParameters

Метод предоставляет информацию о параметрах параметризованного SELECT-оператора в виде массива объектов IDataParameter (а не объектов DbParameter ADO.NET-провайдера СУБД ЛИНТЕР).

Если не нужно проверять или задавать значения свойств Size, Precision и Scale, то с помощью данного метода можно присваивать значения параметрам.

Синтаксис
public override IDataParameter[] GetFillParameters();
Возвращаемое значение

Массив объектов IDataParameter, соответствующих SQL-оператору, указанному в свойстве SelectCommand.

Если объект DataAdapter каким-либо образом не инициализирован (например, свойство SelectCommand равно null), то исключение не генерируется, а возвращается массив объектов IDataParameter, не содержащий элементов, т.е. нулевой длины.

Исключения

Отсутствуют.

Пример
// C#
using System;
using System.Data;
using System.Data.Common;

class GetFillParametersSample
{
  static void Main()
  {
    // Создание фабрики классов провайдера
    DbProviderFactory factory =
      DbProviderFactories.GetFactory("System.Data.LinterClient");
    // Соединение с БД
    DbConnection con = factory.CreateConnection();
    con.ConnectionString =
      "Data Source=LOCAL;User ID=SYSTEM;Password=MANAGER8";
    // Создание параметров для команды
    DbParameter par = factory.CreateParameter();
    par.ParameterName = ":car";
    par.Direction = ParameterDirection.Input;
    par.DbType = DbType.String;
    par.Size = 20;
    par.Value = "CHEVROLET%";
    // Создание команды для выборки записей
    DbCommand selectCommand = factory.CreateCommand();
    selectCommand.Connection = con;
    selectCommand.CommandText =
      "select personid, model from auto where model like :car";
    selectCommand.Parameters.Add(par);
    // Создание объекта DbDataAdapter
    DbDataAdapter adapter = factory.CreateDataAdapter();
    adapter.SelectCommand = selectCommand;
    // Заполнение объекта DataTable данными из таблицы БД
    DataTable table = new DataTable();
    adapter.Fill(table);
    // Отображение полученных данных
    Console.WriteLine("Строки таблицы:");
    foreach (DataRow row in table.Rows)
    {
      foreach (DataColumn column in table.Columns)
      {
        Console.Write("{0} | ", row[column.ColumnName]);
      }
      Console.WriteLine();
    }
    // Отображение параметров
    Console.WriteLine("Параметры:");
    foreach (IDataParameter p in adapter.GetFillParameters())
    {
      Console.WriteLine("Имя параметра: " + p.ParameterName);
      Console.WriteLine("Значение параметра: " + p.Value);
    }
  }
}