问题标签 [cls-compliant]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
20042 浏览

c# - 为什么 unsigned int 不符合 CLS?

为什么无符号整数不符合 CLS?

我开始认为类型规范只是为了性能而不是为了正确性。

0 投票
3 回答
261 浏览

.net - 您的代码需要哪些更高级的规则才能成为 CLS 投诉?

这是根据 VS.NET 2005 不符合 CLS 投诉的具体示例。

这是我用 DbId32、DbId64、DbIdString 等类实现的接口。它是一种将本机数据库主键类型抽象为一个常见的 .Net 类型的方法。

我没有显示的是工厂方法,它实例化正确的具体类型(例如,SQL Server 类型“int”的新 DbId32)给定本机数据库类型。

现在假设我像这样使用这个界面:

VS 现在输出此警告消息:

函数“ID”的返回类型不是 CLS 投诉的。

我可以通过将此属性添加到我的界面来停止这些警告,如下所示:

此接口定义的所有功能似乎都没有违反此处记录的规则。那么为什么 VS 会显示这些警告呢?

0 投票
2 回答
1494 浏览

.net - .NET 中非 CLS 兼容代码的后果是什么?

对于我从 VB6 移植的应用程序,我有几个关于 CLS-Compliance 的令人讨厌的编译器警告,包括:

尽管如此,我的应用程序似乎在 COM 和托管客户端上运行良好。我已经看过几篇描述如何使代码符合 CLS 的文章,我可能会继续这样做以摆脱烦人的警告,但我很好奇不符合 CLS 的代码在实际中的缺点是什么条款?我还没有发现这种强加的限制是什么?

0 投票
3 回答
1831 浏览

.net - 是否有检查 CLS 合规性的工具?

是否有工具可以分析我的 .NET 代码(C# 和VB.NET)并告诉我为什么不符合 CLS?

Visual Studio 很高兴告诉我一个参数不符合 CLS,但它并没有让我更接近解决问题,因为我不知道原因。

示例 Visual Studio 错误:

参数“xyz”不符合 CLS

0 投票
3 回答
1223 浏览

.net - 什么时候可以违反 CLS 合规性?

我想知道存在哪些可以使公共语言规范合规性可接受的边缘情况。即使不打算从其他语言访问,我认为由断言的原则CLSCompliantAttribute是良好的最佳实践。

您是否遇到过/知道YAGNI胜过最佳实践的案例?

0 投票
3 回答
2411 浏览

vb.net - 了解 CLS 合规性和正确的代码

我试图创建一个抽象控件来管理我们应用程序中的一些状态。但是,我遇到了一些 CLS 问题,并希望有人能提供一些见解。

我有一个这样的枚举:

还有一个这样的类:

当我尝试编译此代码时,我得到一个警告,即State属性不符合 CLS 且state参数也不符合。怎么会?我该如何纠正这个问题以消除警告?

0 投票
5 回答
57295 浏览

.net - .NET 中的“CLSCompliant”属性是什么?

CLSCompliant属性是什么?

0 投票
2 回答
847 浏览

c# - 参数类型“FluentNHibernate.Mapping.IProperty”不符合 CLS

名称不合规?布局?什么?

您有什么想法可以生成此消息吗?欢迎任何想法。我有一堆这样的警告。

实际上,我愿意删除 CLSCompliant(true),但我想知道根本原因。

0 投票
2 回答
17154 浏览

c# - 为 .NET 程序集设置 CLS 合规性

可以为整个 .NET 程序集设置 CLS 合规性。但它实际上是如何完成的?例如使用 Visual Studio 2008?

0 投票
1 回答
329 浏览

c# - 在这种情况下,警告 CS3006 是否有效?

下面的代码生成警告 CS3006“重载的方法 MyNamespace.Sample.MyMethod(int[])' 仅在 ref 或 out 或数组等级中不同,不符合 CLS”。

这个警告是否有效,即这真的不符合 CLS 吗?我原以为显式接口实现不会算作重载。