Поделиться через


Ошибка компилятора CS0417

Обновлен: Ноябрь 2007

Сообщение об ошибке

"identifier": при создании экземпляра типа переменной не удается задать аргументы
'identifier': cannot provide arguments when creating an instance of a variable type

Эта ошибка возникает при наличии аргументов у вызова оператора new в параметре-типе. Единственным конструктором, который можно вызвать с помощью оператора new или неизвестного параметра-типа, является конструктор без аргументов. Если необходимо вызвать другой конструктор, следует рассмотреть возможность использования ограничения типа класса или ограничения интерфейса.

Пример

В следующем примере возникает ошибка CS0417.

// CS0417
class C<T> where T : new()
{
    T type = new T(1);   // CS0417
}