Tag: cls compliant

在这种情况下警告CS3006有效吗?

下面的代码生成警告CS3006“重载方法MyNamespace.Sample.MyMethod(int [])’仅在ref或out中有区别,或者在数组级别中不符合CLS”。 这个警告是否有效,即这真的不符合CLS吗? 我原以为显式接口实现不会算作过载。 [assembly: CLSCompliant(true)] namespace MyNamespace { public class Sample : ISample { public void MyMethod(int[] array) { return; } void ISample.MyMethod(ref int[] array) { this.MyMethod(array); } } public interface ISample { void MyMethod([In] ref int[] array); } }

有什么理由不将DLL标记为CLSCompliant?

我目前正在测试Ndepend,它给了我一个警告,即程序集应该标记为CLSCompliant。 我们的项目都是C#,所以并不是真的需要它。 我想知道的是:将dll标记为clscompliant是否有任何负面影响,或者我应该禁用警告? 注意我不是在问这里有什么CLSCompliant意味着什么 : .NET中的’CLSCompliant’属性是什么?

为什么我的class级不符合CLS?

这真让我感到困惑。 我已经尝试删除只读,更改名称..我在这里做错了什么? public abstract class CatalogBase where T : class { protected readonly String DataPath; protected readonly XmlSerializer Serializer; private readonly XmlSerializerNamespaces _namespaces; protected CatalogBase(String dataPath) { DataPath = dataPath; Serializer = new XmlSerializer(typeof (T)); _namespaces = new XmlSerializerNamespaces(); _namespaces.Add(String.Empty, String.Empty); } public virtual void Write(T obj) { var streamWriter = new StreamWriter(DataPath); Serializer.Serialize(streamWriter, obj, […]

C#:非零的数组不符合CLS

我现在正在阅读Albahari的C#3.0 in a Nutshell and pg。 241,在谈论数组索引时,他说: 基于非零的数组不符合CLS(公共语言规范) 对于非零数组不符合CLS ,这究竟意味着什么? 它对你的代码有什么影响? [更新] 这是该书页面的链接。