Прочитать на английском

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


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

Невозможно задать аргумент CLSCompliant в модуле, который отличается от атрибута CLSCompliant в сборке.

Это предупреждение возникает при наличии атрибута CLSCompliant сборки, который конфликтует с атрибутом CLSCompliant модуля. В CLS-совместимой сборке не могут содержаться модули, не являющиеся CLS-совместимыми. Чтобы устранить это предупреждение, убедитесь, что оба атрибута CLSCompliant сборки и модуля имеют значение true или false, или удалите один из атрибутов. Дополнительные сведения о соответствии 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() {}  
}