0

I have the following validation not working and cannot resolve why that is the case?

    [Display(Name = "Bus")]
    [RequiredIf("SelectedWidgetText == 'Referral'", ErrorMessage = "Please select a Vehicle.")]
    public int DepotId{ get; set; }

    public string SelectedWidgetText { get; set; }

I have also tried the following:

[Display(Name = "Bus")]
[AssertThat("SelectedWidgetText == 'Referral'", ErrorMessage = "Please select a Vehicle.")]
public int DepotId{ get; set; }

on the server side, when the modelstate.isvalid method is hit, it returns false and the error message thrown is The DepotId field is required.

Baahubali
  • 4,604
  • 6
  • 33
  • 72

1 Answers1

0

just by changing the DepotId to Nullable like the following, the validation started working as expected:

public int? DepotId{get;set;}

After reading the documentation, looks like the value types have to be nullable before the data annotation will work on them.

Baahubali
  • 4,604
  • 6
  • 33
  • 72