2016-09-20 57 views
3

我有以下异常合同。如何通过HTTP客户端从Web API抛出业务异常

public class AdminBusinessException : Exception 
{ 
    /// <summary> 
    /// Gets or Sets Exception Code. 
    /// </summary> 
    public string ExceptionCode { get; set; } 

    /// <summary> 
    /// Gets or Sets Description. 
    /// </summary> 
    public string Description { get; set; } 

    /// <summary> 
    /// Initiates here. 
    /// </summary> 
    /// <param name="exceptionCode"></param> 
    /// <param name="description"></param> 
    public AdminBusinessException(string exceptionCode, string description) 
    { 
     this.ExceptionCode = exceptionCode; 
     this.Description = description; 
    } 
} 

所以我想抛出异常代码以及描述我的HTTP客户端。 任何人都可以帮助我解决这个问题。

我strucking这个:(:(

+0

可能的重复[Web API抛出自定义异常回客户端](http://stackoverflow.com/questions/26718868/web-api-throw-custom-exception-back-to-client) –

回答

0

你的网络API应该使用HTTP约定处理响应,您可以包括在身体的消息

前:

Public IHttpActionResult DoSomethingBusiness(int id) 
{ 
    if(some error from client) 
     return BadRequest("some error message here") 

    return Ok("Everything seems good") 
} 
+0

有什么办法可以抛出异常对象到客户端? –

+0

异常对象表示服务器er ror,在这种情况下,你必须返回一个状态码,如500,并且包含一个错误消息,以便说明发生了什么。 如果错误是由于客户端数据中的问题导致的,那么您必须返回(Bad Request),并在消息正文中包含异常详细信息,如下所示; return BadRequest(exception.ToString()) –

相关问题