C# WebApi 返回详细错误信息

C# WebApi 返回详细错误信息

问题原由

笔者在写一个 WebApi 项目时,出现 500 错误时访问 API 地址老是返回:web

<Error>
<Message>An error has occurred.</Message>
</Error>

没法看到详细错误信息,致使没法调试。服务器

解决方案

在全局处理文件 Global.asax 中的 Application_Start() 方法中加上以下一行代码:svg

protected void Application_Start()
        {
            GlobalConfiguration.Configure(WebApiConfig.Register);
            // 加上下面这一行,让服务器老是返回详细错误信息
            GlobalConfiguration.Configuration.IncludeErrorDetailPolicy
                = IncludeErrorDetailPolicy.Always;
            //
        }

注意:建议调试完成后注释掉,以避免黑客进行渗透时看到错误信息,更容易被攻破。spa

我的主页
2019.3.26调试