登录/注册

ca1104

更多

好的!“CA1104” 是 Microsoft 代码分析规则中的一个特定警告编号,中文含义是:

CA1104:异常应该是公共的

具体解释

这条规则的核心意思是:

当你定义了一个从 System.Exception(或其子类)继承而来的自定义异常类 (MyCustomException) 时,这个自定义异常类本身必须声明为 public(公共的)

为什么有这个规则?

  1. 可访问性: 异常通常需要在定义它的程序集(Assembly)之外被捕获和处理。如果异常类是内部的 (internal) 或私有的 (private),那么外部代码就无法捕获它,这使得抛出这个异常变得没有意义,因为外部调用者无法针对性地处理它。
  2. 一致性: .NET Framework 设计准则要求公共可用的异常必须是公共的,以确保库或框架的使用者能够正确处理它们。
  3. 设计意图: 如果你定义了一个异常类,通常意味着你期望它能在不同的地方(包括不同的程序集)被使用。将其设为 public 明确了这种设计意图。

如何修复?

解决方案非常简单:确保你的自定义异常类是 public 的。

错误示例 (会触发 CA1104)

//  ❌ 错误:自定义异常是 internal(默认访问级别),但应该为 public
internal class MyCustomException : Exception
{
    public MyCustomException() { }
    public MyCustomException(string message) : base(message) { }
}

正确示例 (修复 CA1104)

// ✅ 正确:自定义异常被声明为 public
public class MyCustomException : Exception
{
    public MyCustomException() { }
    public MyCustomException(string message) : base(message) { }
}

总结

当你在代码中看到警告 CA1104,只需检查你定义的所有继承自 Exception 的自定义异常类,确保它们的访问修饰符是 public 而不是 internalprotectedprivate。将其改为 public 即可解决该警告。

英文对应规则名称: ExceptionsShouldBePublic

Texas Instruments LMKDB1104EVM评估模块数据手册

Texas Instruments LMKDB1104EVM评估模块设计用于提供快速设置来评估LMKDB1104 LP-HCSL缓冲器。LMKDB1104

2025-07-28 10:40:00

MAX1104EUA+W 接口 - 编解码器

电子发烧友网为你提供Maxim(Maxim)MAX1104EUA+W相关产品参数、数据手册,更有MAX1104EUA+W的引脚图、接线图、封装手册、中文资料、英文资料,MAX

2023-01-28 19:26:08

MAX1104EUA+T 接口 - 编解码器

电子发烧友网为你提供Maxim(Maxim)MAX1104EUA+T相关产品参数、数据手册,更有MAX1104EUA+T的引脚图、接线图、封装手册、中文资料、英文资料,MAX

2023-01-28 19:23:02

DC1104A-设计文件

DC1104A-设计文件

资料下载 吴湛 2021-06-16 20:41:45

DC1104A-演示板软件

DC1104A-演示板软件

资料下载 佚名 2021-06-11 11:43:23

DC1104A-演示手册

DC1104A-演示手册

资料下载 佚名 2021-05-11 15:05:06

DC1104A-模式

DC1104A-模式

资料下载 李娜 2021-04-30 13:46:52

DC1104A-设计文件

DC1104A-设计文件

资料下载 31274 2021-04-12 13:30:36

MAX1104EUA+ 接口 - 编解码器

电子发烧友网为你提供Maxim(Maxim)MAX1104EUA+相关产品参数、数据手册,更有MAX1104EUA+的引脚图、接线图、封装手册、中文资料、英文资料,MAX

2023-01-28 19:21:59

CA1104A20

CA1104A20 - For electrovalves, style A, 2p2G, female, with cable - SHIELD s.r.l.

2022-11-04 17:22:44

CA1104A40

CA1104A40 - For electrovalves, style A, 2p2G, female, with cable - SHIELD s.r.l.

2022-11-04 17:22:44

DC1104B DC1104B评估板

电子发烧友网为你提供ADI(ti)DC1104B相关产品参数、数据手册,更有DC1104B的引脚图、接线图、封装手册、中文资料、英文资料,DC1104

2021-07-15 13:00:03

开关电源电路SC1104资料推荐

开关电源电路SC1104资料下载内容主要介绍了:SC1104引脚功能SC1104内部方框图SC

2021-03-26 07:09:00

CA3306芯片和DCT1104芯片主要性能

CA3306芯片和DCT1104芯片主要性能,管脚说明。谢谢

2020-03-29 20:36:07

BCM1104 千兆IP电话芯片

电子发烧友网为你提供Broadcom(ti)BCM1104相关产品参数、数据手册,更有BCM1104的引脚图、接线图、封装手册、中文资料、英文资料,BCM11

2019-07-04 09:51:00
7天热门专题 换一换
相关标签