My viewmodel happened to have a property simply named Date. I added an AssertThat attribute for a condition of "Date > SomeOtherDate" and the validation always failed. After some debugging of the client script, I see that the model used by expressive annotations doesn't handle a property named the same as something already contained in the model. The property Date collides with the Date function already present. Changing my property name to some other name resolved the issue.
My viewmodel happened to have a property simply named Date. I added an AssertThat attribute for a condition of "Date > SomeOtherDate" and the validation always failed. After some debugging of the client script, I see that the model used by expressive annotations doesn't handle a property named the same as something already contained in the model. The property Date collides with the Date function already present. Changing my property name to some other name resolved the issue.