.net Web API を使用して Web サービスを作成することを検討していますが、エラー メッセージを送信する方法が 2 つあります。HttpResponseMessage
1 つ目は、次のような適切なHttpStatusCode
セットを含む を返すことです。
public HttpResponseMessage<string> Get()
{
...
// Error!
return new HttpResponseMessage<string>(System.Net.HttpStatusCode.Unauthorized);
}
HttpResponseException
もう 1 つの方法は、次のように単に をスローすることです。
public Person Get(int id)
{
if (!_contacts.ContainsKey(id))
{
throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.NotFound, String.Format("Contact {0} not found.", id)));
}
return _contacts[id];
}
どちらかを使用する利点/欠点はありますか? また、スケーラビリティとパフォーマンスの点で、どちらが優れているのでしょうか?