【发布时间】:2026-01-16 05:20:05
【问题描述】:
我有一种情况需要验证孩子,但前提是它存在。基本上用户可以输入银行账户或信用卡,我只想验证他们输入的那个。
以下是模型:
public class AccountViewModel
{
[Required]
public bool isBankAccount { get; set; }
[RequiredIf("isBankAccount")]
public BankAccount BankAccount { get; set; }
[RequiredIf("isBankAccount",
IfNot = true)]
public CreditCard CreditCard { get; set; }
}
public class CreditCard
{
[Required]
[CreditCard]
public string CreditCardNumber { get; set; }
[Required]
[Range(1, 12)]
public int? ExpiryMonth { get; set; }
[Required]
[Range(2000, 3000)]
public int? ExpiryYear { get; set; }
[Required]
public string CardHolderName { get; set; }
}
public class BankAccount
{
[Required]
public string BSB { get; set; }
[Required]
[StringLength(10,
MinimumLength = 3)]
[NumbersOnly]
public string AccountNumber { get; set; }
[Required]
public string AccountHolderName { get; set; }
}
我的问题是,尽管父属性验证为 true,但子属性仍在验证中。如果父母这么说,有没有办法阻止孩子验证?
【问题讨论】:
标签: asp.net-mvc asp.net-mvc-3 validation