문제

How do I disable CLS compliance checking?

How can I do it for:

  1. The entire assembly
  2. A smaller scope, maybe one file or one class...
도움이 되었습니까?

해결책

You can use the CLSCompliant attribute to explicitly mark an assembly or type, e.g.

For an assembly, add the following line in AssemblyInfo.cs

[assembly: CLSCompliant(false)]

For a class

[CLSCompliant(false)]
public class Foo
{
}

You can also use it for specific type members (methods, properties, etc.) in a similar manner.

다른 팁

You could use the [CLSCompliant(false)] attribute.

Quote from the doc:

You can apply the CLSCompliantAttribute attribute to the following program elements: assembly, module, class, struct, enum, constructor, method, property, field, event, interface, delegate, parameter, and return value. However, the notion of CLS compliance is only meaningful for assemblies, modules, types, and members of types, not parts of a member signature. Consequently, CLSCompliantAttribute is ignored when applied to parameter or return value program elements.

There's also possibility to supress compiler warnings.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top