試してみるとうまくいく正規表現があります:
System.Text.RegularExpressions.Regex.IsMatch("universal",@"^[A-Za-z0-9 ._’&-/s]{0,100}$")
true
System.Text.RegularExpressions.Regex.IsMatch("universal £$%$£%",@"^[A-Za-z0-9 ._’&-/s]{0,100}$")
false
しかし、検証フィルターとして使用すると:
[RegularExpression(@"^[A-Za-z0-9 ._’&-/s]{0,100}$", ErrorMessage = "The parameter is not valid")]
クライアント側では機能しますが、サーバー側では機能しません。たとえば、「ユニバーサル」という単語を渡すModelState
と、その正規表現バリデータでマークされたフィールドに関するエラーが含まれます。
この属性は、そのフィールドに適用される唯一の検証規則です。何が問題なのですか?
乾杯。