ASP.NET Web API でエラーを返すためのベスト プラクティス
ASP.NET Web API でエラーを処理する場合、主に 2 つの方法があります。アプローチ: エラーをすぐに返すか、エラーを蓄積してまとめて送り返します。この記事では、各アプローチの長所と短所を検討し、推奨されるベスト プラクティスを提供します。
1.エラーをすぐに返す
最初のアプローチでは、HttpResponseExceptions を使用してエラーがすぐに返されます。これは次の場合に適しています。
例:
public void Post(Customer customer) { if (string.IsNullOrEmpty(customer.Name)) { throw new HttpResponseException("Customer Name cannot be empty", HttpStatusCode.BadRequest); } if (customer.Accounts.Count == 0) { throw new HttpResponseException("Customer does not have any account", HttpStatusCode.BadRequest); } }
2.エラーの蓄積と返送
2 番目のアプローチでは、エラーが蓄積され、アクションの終了時にまとめて返されます。これは次の場合に推奨されます:
例:
public void Post(Customer customer) { List<string> errors = new List<string>(); if (string.IsNullOrEmpty(customer.Name)) { errors.Add("Customer Name cannot be empty"); } if (customer.Accounts.Count == 0) { errors.Add("Customer does not have any account"); } var responseMessage = new HttpResponseMessage<List<string>>(errors, HttpStatusCode.BadRequest); throw new HttpResponseException(responseMessage); }
ベスト プラクティス
どちらのアプローチにもそれぞれ利点がありますが、推奨されるベスト プラクティスは、すぐにエラーを返すことです。これ:
ただし、致命的ではないエラーについては、より大規模な検証または処理段階の一部であるため、エラーが蓄積され、それらをまとめて返すことはさらに多くなる可能性があります
更新
この記事は、ブログ投稿からの洞察とベスト プラクティスの変更に基づいて時間の経過とともに更新されています:
以上がASP.NET Web API はどのようにエラーを返す必要がありますか: 即時または一括で?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。