そのビューモデルにビューモデルがあり、次のように同じモデルを使用して2つの異なるインスタンスを作成しました:
public ClaimViewModel()
{
engineClaim = new ClaimModel();
boatClaim = new ClaimModel();
}
public ClaimModel engineClaim { get; set; }
public ClaimModel boatClaim { get; set; }
次のような ClaimModel のプロパティがありました。
[Required]
public string Complaint { get; set; }
[RequiredIf("isEngineClaim", true , ErrorMessage = "Required")]
public string Cause { get; set; }
[Required]
public string Correction { get; set; }
public bool isEngineClaim { get; set; }
そしてコントローラーでは、このようにインデックスページをロードしています
public ActionResult Index()
{
ViewBag.Message = "Welcome to ASP.NET MVC!";
ClaimViewModel claim = new ClaimViewModel();
claim.engineClaim = new Models.ClaimModel();
claim.engineClaim.isEngineClaim = true;
claim.boatClaim = new Models.ClaimModel();
claim.boatClaim.isEngineClaim = false;
return View("Index", claim);
}
今私の問題は、「isEngineClaim」プロパティが 2 つのインスタンスで異なるにもかかわらず、検証が機能しない場合に必要です。私は このリンクをたどっ ています。さらに、「isEngineClaim」の非表示フィールドもビューに配置しました。しかし、必要な検証が機能していない場合、誰かが私に解決策を提案できます。