当参数包含"。"

时间:2017-04-28 19:53:50

标签: asp.net-web-api2 http-get

我的web api工作正常,直到业务规则要求我将参数从int更改为string。 我知道有些错误可以预料到,但没有这个:

    [ResponseType(typeof(UserDTO))]
    [HttpGet]
    [Route("api/users/{id}")]
    public IHttpActionResult GetUser(string id)
    {
        try
        {
            userValidator.secure(Request);
            User user = userValidator.GetUser(id);
            UserDTO userDTO = new UserDTO()
            {
                UserId = user.UserId,
                Name = user.Name,
                Admin = user.Admin,
                Deleted = user.Deleted
            };
            return Ok(userDTO);
        }
        catch (NotExistException exception)
        {
            return ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.BadRequest, exception.Mymessage));
        }
        catch (System.Data.SqlClient.SqlException)
        {
            return ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, "VecinosUY no se puede conectar a la base de datos (∩︵∩)"));
        }
        catch (Exception exception) {
            return ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, exception.Message));
        }

    }

如果字符串{id}不包含“'”,则HTTP可以正常工作。'

http://192.168.0.110:45455/api/users/facu有效 http://192.168.0.110:45455/api/users/facu.facu不要。

解决这个问题的任何工作?

0 个答案:

没有答案