AddRange

Метод добавляет в конец коллекции параметров массив параметров.

В коллекции параметров при каждом добавлении выделяется необходимый ресурс для размещения добавляемого массива параметров.

Максимальное количество параметров коллекции с учетом добавленного массива параметров и максимальный размер массива добавляемых параметров ограничены объемом доступной оперативной памяти и не могут быть больше значения Int32.MaxValue.

Синтаксис
public abstract void AddRange(Array values);

values – массив добавляемых параметров.

Элементы массива должны иметь тип данных DbParameter.

Возвращаемое значение

Значение типа void.

Исключения
ArgumentException Добавляемый параметр уже существует в коллекции.
InvalidCastException Переданный параметр не является LinterDbParameter.
ArgumentNullException Аргумент values содержит null-значение.
OutOfMemoryException, OverflowException Превышено допустимое количество параметров в коллекции (недостаточно ресурсов).
Пример
// C#
using System;
using System.Data;
using System.Data.Common;

class AddRangeSample
{
  static void Main()
  {
    // Создание фабрики классов провайдера
    DbProviderFactory factory =
      DbProviderFactories.GetFactory("System.Data.LinterClient");
    // Создание команды
    DbCommand myCommand = factory.CreateCommand();
    // Создание параметров
    DbParameter param1 = factory.CreateParameter();
    param1.ParameterName = "MAKE";
    param1.DbType = DbType.String;
    DbParameter param2 = factory.CreateParameter();
    param2.ParameterName = "MODEL";
    param2.DbType = DbType.String;
    DbParameter param3 = factory.CreateParameter();
    param3.ParameterName = "YEAR";
    param3.DbType = DbType.Int32;
    // Создание массива параметров
    Array myArray = Array.CreateInstance(typeof(DbParameter), 3);
    myArray.SetValue(param1, 0);
    myArray.SetValue(param2, 1);
    myArray.SetValue(param3, 2);
    // Добавление массива параметров в коллекцию
    myCommand.Parameters.AddRange(myArray);
    // Отображение полученной коллекции
    for (int i = 0; i <  myCommand.Parameters.Count; i++)
    {
      Console.WriteLine(myCommand.Parameters[i].ParameterName);
    }
  }
}