using System;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using RevitHttpControl.Models;
namespace RevitHttpControl.Common
{
///
/// 扩展方法类
///
public static class Extensions
{
///
/// 创建成功响应
///
/// 数据类型
/// 控制器实例
/// 响应数据
/// 响应消息
/// HTTP状态码
/// HTTP响应消息
public static HttpResponseMessage CreateSuccessResponse(this ApiController controller, T data,
string message = "操作成功", HttpStatusCode statusCode = HttpStatusCode.OK)
{
var response = new ApiResponse
{
Success = true,
Code = (int)statusCode,
Message = message,
Data = data
};
return controller.Request.CreateResponse(statusCode, response);
}
///
/// 创建错误响应
///
/// 控制器实例
/// 错误码
/// 错误消息
/// HTTP状态码
/// 详细错误描述
/// HTTP响应消息
public static HttpResponseMessage CreateErrorResponse(this ApiController controller, string errorCode,
string message, HttpStatusCode statusCode = HttpStatusCode.InternalServerError,
string errorDescription = null)
{
var errorData = new
{
error = errorCode,
errorDescription = errorDescription
};
var response = new ApiResponse