0

そのビューモデルにビューモデルがあり、次のように同じモデルを使用して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」の非表示フィールドもビューに配置しました。しかし、必要な検証が機能していない場合、誰かが私に解決策を提案できます。

4

0 に答える 0