This is by design. If your model is zero, no validation is performed. If, on the other hand, your model is not null, but the Bar1 property is null or an empty string, you will receive a validation error.
For example, you get a validation error with the following payload:
{ "Bar2": "Bazinga" }
or with this:
{ "Bar1": null, "Bar2": "Bazinga" }
or with this:
{ "Bar1": "", "Bar2": "Bazinga" }
source share