0

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 を常に含める必要があることを示すために、ユーザーに設定できるものはありますか?

4

1 に答える 1

0

ModelState.AddModelError メソッドを使用できます。

ModelState.AddModelError("VariableName", "Error Message");
于 2013-02-04T17:55:05.787 に答える