解决MySql布尔型新旧版本兼容问题,采用枚举来表示布尔型的数据表。由正向工程赋值
大石头 authored at 2018-05-15 21:21:05
1.11 KiB
X
using System.Net;

namespace NewLife.Http;

/// <summary>HTTP异常,携带Http状态码</summary>
/// <remarks>
/// 在处理请求过程中抛出此异常,HttpServer会自动返回对应状态码。
/// 其余未处理异常统一返回 500 InternalServerError。
/// 
/// <code>
/// throw new HttpException(HttpStatusCode.NotFound, "用户不存在");
/// throw new HttpException(401, "未授权访问");
/// </code>
/// </remarks>
public class HttpException : Exception
{
    /// <summary>HTTP状态码</summary>
    public HttpStatusCode StatusCode { get; set; } = HttpStatusCode.InternalServerError;

    /// <summary>实例化</summary>
    /// <param name="statusCode">HTTP状态码</param>
    /// <param name="message">错误消息</param>
    public HttpException(HttpStatusCode statusCode, String message) : base(message) => StatusCode = statusCode;

    /// <summary>实例化</summary>
    /// <param name="statusCode">HTTP状态码数值</param>
    /// <param name="message">错误消息</param>
    public HttpException(Int32 statusCode, String message) : base(message) => StatusCode = (HttpStatusCode)statusCode;
}