| 属性 | 值 |
|---|---|
| 规则 ID | CA1724 |
| 标题 | 类型名称不应与命名空间一致 |
| 类别 | 命名 |
| 修复会引起中断还是不会引起中断 | 突发 |
| 在 .NET 10 中默认启用 | 否 |
| 适用的语言 | C# 和 Visual Basic |
原因
类型名称与被引用的命名空间名称相匹配,该命名空间具有一个或多个外部可见类型。 名称比较不区分大小写。
规则说明
用户创建的类型名不应与具有外部可见类型的被引用命名空间的名称冲突。 与该规则冲突将使库的可用性下降。
如何解决违规
重命名该类型,使其与具有外部可见类型的被引用命名空间的名称不冲突。
何时禁止显示警告
对于新开发,没有任何已知情况必须禁止显示此规则的警告。 在抑制该警告之前,请仔细考虑库的用户可能会因相同名称感到困惑。 对于发布库,可能必须禁止显示此规则发出的警告。
抑制警告
如果只想抑制单个冲突,请将预处理器指令添加到源文件以禁用该规则,然后重新启用该规则。
#pragma warning disable CA1724
// The code that's violating the rule is on this line.
#pragma warning restore CA1724
若要对文件、文件夹或项目禁用该规则,请在none中将其严重性设置为 。
[*.{cs,vb}]
dotnet_diagnostic.CA1724.severity = none
有关详细信息,请参阅如何禁止显示代码分析警告。
示例
namespace MyNamespace
{
// This class violates the rule
public class System
{
}
}