gpt4 book ai didi

c# - 实现自定义异常树的最准确方法是什么?

转载 作者:太空宇宙 更新时间:2023-11-04 06:47:41 24 4
gpt4 key购买 nike

我正在开发一个向客户端提供方法的 RPC Web 服务,我想使用异常来处理服务器应用程序中的错误,以便自动生成带有错误 header 的响应,更重要的是,生成带有自定义错误代码(整数)的响应。我创建了一个 CustomException 基类,它包含一个整数和消息。

我是否应该为每个方法的每个异常创建一个新类,并将其自定义错误代码硬编码在该类上?或者有其他方法可以解决这个问题吗?

例如假设我有一个 Login 方法,它可以有两个异常(exception),“UnknownUsername”和“InvalidPassword”(仅作为示例;正如 Tieston T. 评论的那样,返回身份验证信息不是一个好习惯)。目前我能想到的方法有:

  • 使用 LoginException 类并在内部方法上设置错误代码
  • 创建一个 UnknownUsernameException 和一个 InvalidPasswordException 类,继承 LoginException,并对每个类上的错误代码进行硬编码

最佳答案

如果需要,您可以创建单独的异常类。

或者您可以创建一个自定义异常类,其中包含一个 ENUM,其中包含 error_code 以及可能发生的各种类型异常的消息。

您的自定义异常类将具有接受 ENUM 和消息的构造函数。

每当代码抛出自定义异常时,它都会通过构造函数填充枚举。您可以从中查找错误代码和错误消息,并将其相应地传递给客户端。

这将帮助您记录异常(供内部使用)并通过一个类响应客户端。

关于c# - 实现自定义异常树的最准确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23751552/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com