3
.NET Web API 2.2を使用してC#でAPIを構築しています。リクエストを検証し、ModelState経由で 'エラー'レスポンスを返します。.NET Web API - ModelStateによるエラー応答
[ResponseType(typeof(IEnumerable<CustomerModel>))]
public IHttpActionResult Get([FromBody]List<CustomerSearchModel> row)
{
if (ModelState.IsValid)
{
CustomerLookupModel model = new CustomerLookupModel(row);
model.Init();
model.Load();
return Ok(model.Customers);
}
else
{
return BadRequest(ModelState);
}
}
ここには「エラー」というサンプルレスポンスがあります。
{
"message": "The request is invalid.",
"modelState": {
"row[0].Country": ["'Country' should not be empty."]
}
}
'error'レスポンスでは、 'modelState'という単語を 'error'に変更したいと思います。私は、 'ModelState'オブジェクトをコピーし、それに 'error'という名前を付けて、BadRequestにそれを含めることで、それを行うことができると思いました。
return BadRequest(error);
これは機能しませんでした。私は単純なものを逃しているに違いない。
こんにちは...私はあなたの答えを理解していません。 ModelStateは辞書です。私はこのアプローチを使用して終了しました - http://www.khalidabuhakmeh.com/a-better-validation-result-for-asp-net-webapi – Bill
申し訳ありません、私は何を意味匿名のオブジェクトを返すことでした。 Dintは実際にコードを使用することを意味していました。私はコードを更新しました。 – Developer
aahhh ...ありがとう! – Bill