有没有一种简单的方法可以将 HttpError 转换为 Exception

我正在考虑利用反射根据 HttpError.Message 的内容实例化异常 - 这是完成我想做的事情的最佳方式吗?

最佳答案

您不能将 HttpError 转换/转换为 Exception 。相反,您可以使用 HttpError.Message 创建一个新的异常(或您自己的自定义异常)

throw new Exception(HttpErrorObject.Message);

编辑: 如果您想要自己的自定义异常,那么您可以创建一个类,如:
class MyHttpException : Exception
{
    public HttpError HttpErrorObject { get; set; }
    public MyHttpException(string Message, HttpError ErrorObject)
        : base(Message)
    {
        this.HttpErrorObject = ErrorObject;
    }
}

然后你可以像这样使用它:
HttpError httpErrorObject = new HttpError("404");
throw new MyHttpException(httpErrorObject.Message, httpErrorObject);

包括原始错误对象,正如 @Reed Copsey 在他的 answer 中所说。

关于c# - 如何将 HttpError 转换为异常类型?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19034489/

10-12 03:10