是否有任何理由不将DLL标记为CLSCompliant?我目前正在测试Ndepend,它警告我应该将程序集标记为CLSCompliant。我们的项目都是C#的,所以不是很需要。我想知道的是:将dll标记为clscompliant是否有任何缺点,或者我应该禁用警告?请注意,我在这里不是在问CLSCompliant是什么意思:Whatisthe'CLSCompliant'attributein.NET?这是那些微妙的案例之一......对于无法控制调用者是谁的库作者来说,CLS合规性可能是最重要的。在您的情况下,您说“我们的项目都是C#”,在这种情况下您是对的:不需要它。它添加了可能(或可能不)影响以最明显的方式表示数据的限制(例如,对无符号类型)。所以:如果它没有为您增加任何价值,那么坦率地说:关闭该规则。如果你可以免费添加它(除了属性之外没有代码更改),那么也许没问题-但它都是关于平衡-努力与结果。如果这里没有收获,请不要投入时间。如果您是图书馆作者(商人或OSS),那么您应该遵循它。有几个不符合CLS的C#功能,例如无符号类型。由于几种语言是不区分大小写的,所以肯定没有只区分大小写的类型和成员,比如MyObject和myObject,以及一些其他的函数。因此,如果您不打算使用其他.NET语言,则没有理由将您的代码标记为CLSCompliant。当您的代码被标记为CLSCompliant时,唯一的负面影响是编译器错误,但事实并非如此。以上是C#学习教程:有什么理由不把DLL标记为CLSCompliant?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
