奇妙な問題があります。ModelState にエラーがあります。しかし、私はそれに対するルールを持っていません。バリデータファイルにフィルターもルールもありません。
私のコード。ビューモデル:
[Validator(typeof(TestValidation))]
public class PayerPayRateViewModel
{
public int TestId { get; set; }
public bool AllServices { get; set; }
public int ParentEntityId { get; set; }
}
バリデーター
public class TestValidation : BaseEntityRepositoryValidator<Core.Domain.Model.Entities.Payer, PayerPayRateViewModel>
{
public TestValidation()
{
RuleFor(x => x.ParentEntityId).Must(CheckUniqueService);
}
protected bool CheckUniqueService(PayerPayRateViewModel model, int value)
{
if (model.AllServices)
{
return true;
}
return false;
}
}
値が 0 の TestId がある場合、「TestId: Field is required」が表示されます。
Viewmodel クラスから検証属性を削除すると、「値が必要です。」というエラーが表示されます。
なぜそれが起こるのですか?