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


Предупреждение компилятора (уровень 1) CS3016

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

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

Использование массивов как аргументов атрибутов в CLS не разрешено
Arrays as attribute arguments is not CLS-compliant

В соответствии со спецификацией CLS не разрешается передавать массив атрибуту. Дополнительные сведения о совместимости со спецификацией CLS см. в разделах Написание CLS-совместимого кода и Спецификация CLS.

Пример

Следующий пример приводит к возникновению ошибки CS3016:

// CS3016.cs

using System;

[assembly : CLSCompliant(true)]
[C(new int[] {1, 2})]   // CS3016
// try the following line instead
// [C()]
class C : Attribute
{
    public C()
    {
    }

    public C(int[] a)
    {
    }

    public static void Main ()
    {
    }
}