c# - 在这个例子中最好在哪里抛出异常?

标签 c# exception-handling

在我正在编写的库中,我有一些方法只会很少执行并且会在运行时执行。当我正在为车辆建模时,其中一种(特殊)方法是破解引擎,这种情况非常罕见。我应该在这个方法中抛出异常吗?这将使车辆无法使用。

我阅读了 .NET Design Framework Guidelines 一书,它指出只有在方法无法完成执行时才应发生异常。实际引擎破解方法将始终完成,但如果调用我的方法之一,例如启动引擎(此方法将存储引擎启动的数量,作为对引擎产生压力的一种方式),并导致调用破解引擎,我应该在哪里(如果有的话)抛出异常?

最佳答案

认为应该抛出异常以突出显示代码或运行时问题。这实际上是正常的系统逻辑(从这个意义上说,破解引擎是模型状态,而不是代码问题),所以不应该抛出。

相反,应该有一些在您建模的系统上下文中有意义的反馈机制。

关于c# - 在这个例子中最好在哪里抛出异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4491623/

相关文章:

c# - View 中的 Rowspan (mvc4)

c# - ManagementScope 能否用于从 Windows 向 Linux/MacOS 客户端发送 wbem 查询? C#

c# - 在 RestSharp 中优雅地处理一个空的 json 对象

oracle - PL/SQL异常处理-函数返回无值

java - catch是java中的一个方法吗?

c# - 你能在 T 是任何类型的地方捕获异常吗?

c# - C# 和 VB6 mdi 应用程序之间的消息互操作

c# - 在主窗口中包含的多个 subview 中导航

c++ - Protocol Buffers C++ 中的异常处理

ASP.NET CustomErrors 在 global.asax 或 web.config 中发生异常时不会触发