我正在从数据库中检索具有某些属性的实体。
属性之一不允许在数据库中为非空字符串。即使不是 null 它也可以是一个空字符串""
。
在 EF 映射中,适当性的验证如下:
this.Property(t => t.ColumnName)
.IsRequired()
.HasMaxLength(50);
问题是,当我尝试使用 Breeze 保存更改时,它会为属性ColumnName
等于空字符串的元素返回错误。(说"ColumnName is required"
)。
这是公认的行为吗?ColumnName
只有当 the will be null
or时才应该抛出错误undefined
?
Breezejs 抛出的错误:
valError: Error
entityErrors: Array[5]
0: Object
entity: Object
ColumnName: function dependentObservable() {
__ko_proto__: function (evaluatorFunctionOrOptions, evaluatorFunctionTarget, options) {
_latestValue: ""
_subscriptions: Object
...
...
entityAspect: ctor
__proto__: Object
errorMessage: "'ColumnName' is required"
errorName: "required"
isServerError: false
propertyName: "ColumnName"
__proto__: Object