ASP.NET Web API では、呼び出し元にエラーを返すときに有効なフィールドを含めたいと考えています。
public class User
{
[Required(ErrorMessage = "ThirdPartyID is required!")]
public int ThirdPartyID { get; set; }
[Required(ErrorMessage = "Firstname is required!")]
public string Firstname { get; set; }
[Required(ErrorMessage = "Lastname is required!")]
public string Lastname { get; set; }
}
発信者が、ThirdParyID が設定され、Firstname が設定されているが、Lastname が設定されていないユーザーを投稿する場合、ThirdPartyID を応答に追加したいと考えています。モデルの検証には以下を使用しています。
public class ModelValidationFilterAttribute : ActionFilterAttribute
{
public override void OnActionExecuting(HttpActionContext actionContext)
{
if (actionContext.ModelState.IsValid == false)
{
actionContext.Response = actionContext.Request.CreateErrorResponse(HttpStatusCode.BadRequest, actionContext.ModelState);
}
}
}
返されるエラー メッセージに ThirdPartyID を常に含める必要があることを示すために、ユーザーに設定できるものはありますか?