値が 0 の選択リストを検証するにはどうすればよいですか?
私は次のことを試しました
RuleFor(x => x.ProductId).Equal(0).WithMessage(required);
RuleFor(x => x.ProductId).NotEqual(0).WithMessage(required);
RuleFor(x => x.ProductId).GreaterThan(0).WithMessage(required);
RuleFor(x => x.ProductId).GreaterThan(0).When(x => x.ProductId < 1).WithMessage(required);
//etc.
選択リストの「選択...」の値が「0」です。フォームでその値を選択すると、ModelState.IsValid がエラーをスローするか (「予期しない範囲」)、ModelState.IsValid をコメントアウトすると、値 0 がデータベースに投稿されます。いずれにせよ、検証は行われていません。文字列、int、およびブール値が混在する他のすべてのフィールドは正常に機能し、正しく検証されます。
注: 私のモデルとビュー モデルでは ProductId は int です。
失った..