/// <summary>
        /// Web API で発生したエラー情報クラスを生成します。
        /// </summary>
        /// <param name="validationResult"></param>
        /// <returns></returns>
        public static WebApiErrorResponse CreateWebApiErrorResponse(this ValidationResult validationResult)
        {
            WebApiErrorResponse result = new WebApiErrorResponse {
                ErrorType = WebApiErrorTypes.InputError, Message = Resources.ValidationErrorMessage
            };

            foreach (ValidationErrorInfo info in validationResult.Errors)
            {
                WebApiErrorDetail detail = new WebApiErrorDetail {
                    PropertyId = info.PropertyId, ObjectId = info.ObjectId, Name = info.Name, Value = info.Value, Message = info.Message
                };

                result.Errors.Add(detail);
            }

            return(result);
        }
Example #2
0
 public WebApiErrorException(WebApiErrorResponse errorResponseData, Exception inner)
     : base(errorResponseData.Message, inner)
 {
     this.ErrorResponseData = errorResponseData;
 }
Example #3
0
 /// <summary>
 /// 引数に指定された <see cref="WebApiErrorResponse"/> をもとにインスタンスを生成します。
 /// </summary>
 /// <param name="errorResponseData"></param>
 public WebApiErrorException(WebApiErrorResponse errorResponseData)
     : base(errorResponseData.Message)
 {
     this.ErrorResponseData = errorResponseData;
 }