小编Ton*_*eno的帖子

无法在Web Api 2中的BadRequest上获取错误消息

我已经google了很多搜索我的问题的答案没有运气所以,让我们尝试,如果别人可以帮助我.

在进行一些验证后,我有一个Web Api 2操作来注册用户.如果一切正常,它将返回序列化用户,如果没有,则返回BadRequest响应中发送的错误消息.

另一方面,我有一个WPF客户端调用API进行响应.

我的问题是我无法得到错误发送的原因,客户端只是得到Bad Request错误消息.

这是代码的一部分:

  • Web Api动作:

    public async Task<IHttpActionResult> AddUser(NewUserDTO {
        if (!ModelState.IsValid)
        {
            return BadRequest(ModelState);
        }
        if (!model.IdCliente.HasValue)
        {
            ModelState.AddModelError("", "No existe el cliente");
            return BadRequest(ModelState);
        }
        // do save stuff
        return Ok(TheModelFactory.Create(user));
    }
    
    Run Code Online (Sandbox Code Playgroud)
  • 客户端功能:

    public async Task<ApplicationUserDTO> AddUser(NewUserDTO dto) {
        using (var client = new HttpClient()) {
            client.BaseAddress = new Uri(_urlBase);
            client.DefaultRequestHeaders.Accept.Clear();
            client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
            client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", Token);
            HttpContent content = new StringContent(JsonConvert.SerializeObject(dto));
            content.Headers.ContentType = new MediaTypeHeaderValue("application/json");
            HttpResponseMessage responseMessage = await client.PostAsync("api/accounts/AddUser", content); …
    Run Code Online (Sandbox Code Playgroud)

c# error-handling response bad-request asp.net-web-api2

7
推荐指数
3
解决办法
1万
查看次数