4

ASP.Net MVC 3 プロジェクトで FluentValidation をセットアップしました。私は2つの入力を持つフォームを持っています。どちらかを空白にすることはできますが、両方を空白にすることはできません。

ここに私が持っているものがあります:

RuleFor(x => x.username)
    .NotEmpty()
    .When(x => string.IsNullOrEmpty(x.email) == true)
    .WithMessage("Please enter either a username or email address")

これにより、ユーザー名フィールドのすぐ上にエラーが正しく表示されます。ただし、両方のフィールドが空白のままになっている場合は、検証の概要にメッセージを表示することをお勧めします

これを行う方法はありますか?モデルに未使用のフィールドを作成し、その上にエラーを表示できると考えていました (他の 2 つが空白の場合)。

RuleFor(x => x.unused_field)
    .NotEmpty()
    .When(x => string.IsNullOrEmpty(x.email) == true && string.IsNullOrEmpty(x.username) == true)
    .WithMessage("Please enter either a username or email address")

しかし、これは厄介な方法のように感じます。検証の概要にメッセージを追加する方法はありますか?

4

2 に答える 2