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


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

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

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

Невозможно задать атрибут CLSCompliant в модуле, который отличается от атрибута CLSCompliant в сборке
You cannot specify the CLSCompliant attribute on a module that differs from the CLSCompliant attribute on the assembly

Это предупреждение возникает, если атрибут CLSCompliant сборки конфликтует с атрибутом CLSCompliant в модуле. Сборка, совместимая со спецификацией CLS, не может содержать модулей, несовместимых с этой спецификацией. Для устранения этого предупреждения убедитесь, что атрибуты CLSCompliant сборки и модуля имеют одинаковое значение ("true" или "false"), или удалите один из атрибутов. Дополнительные сведения о совместимости со спецификацией CLS см. в разделах Написание CLS-совместимого кода и Спецификация CLS.

Пример

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

// CS3017.cs
// compile with: /target:module

using System;

[module: CLSCompliant(true)]
[assembly: CLSCompliant(false)]  // CS3017
// Try this line instead:
// [assembly: CLSCompliant(true)]
class C
{
    static void Main() {}
}