默认情况下将实体添加到缓存中。创建实体时,您可以根据需要将其显式设置entityState
为Detached
或任何其他状态。( entityManager.createEntity('entityType', null, breeze.EntityState.Detached)
)
至于验证,您可以随时手动验证处于任何状态的实体。如果您想在属性更改时检查验证,只需订阅该entityAspect.propertyChanged
事件即可。该propertyChanged
事件将使您能够访问实体本身、更改的属性的名称、旧值和新值。然后,您只需使用entity.entityAspect.validateProperty(propertyname)
并处理结果来检查属性验证。
订阅属性更改并手动验证
(下面的代码来自微风示例)
// assume order is an order entity attached to an EntityManager.
order.entityAspect.propertyChanged.subscribe(
function (propertyChangedArgs) {
// this code will be executed anytime a property value changes on the 'order' entity.
var entity = propertyChangedArgs.entity; // Note: entity === order
var propertyNameChanged = propertyChangedArgs.propertyName;
var oldValue = propertyChangedArgs.oldValue;
var newValue = propertyChangedArgs.newValue;
if (!entity.entityAspect.validateProperty(propertyNameChanged)){
//Property is not valid. Inform the user if needed.
}
});
有关更多帮助和示例,请参阅以下链接:
订阅 propertyChanged 事件
手动验证属性
创建新实体