WebAPI(C#)の配列内データ検証

posted in: .Net Framework, C# | 0

松山事務所の横山です。ASP.NET(C#)のWebAPIにて
jsonのリクエストに対して、配列内の各要素のデータ検証がしたかったのでその際の対応をメモ

jsonから以下のリクエスを受け取る際に、Valuesの各配列に対して最大文字数チェックをしたい。

文字列の最大文字数チェックは以下の2つの属性が既存で提供されている。

System.ComponentModel.DataAnnotations
– StringLength(max)・・・文字列の最大文字数を検証
– MaxLength(max)・・・文字列の最大文字数、配列の最大要素数を検証

どちらも、配列内の各要素に対しての検証は行わないようなのでStringLengthAttributeを継承した検証クラスを自作した。

コントローラー側はこんな感じ
Listにしているが、string[]でもOK。

LINEで送る
Pocket