我有以下模块(下面的伪代码),它使用Breeze将数据保存回服务器。
datacontext{
...
function saveChanges() {
if (manager.hasChanges()) {
return manager.saveChanges()
.then(saveSucceeded)
.fail(saveFailed);
}
return Q.resolve();
function saveSucceeded(data) {
}
function saveFailed(data) {
}
}
...
}
我正在捕捉为了进一步处理而保存的更改:
datacontext.saveChanges().then(processChanges)
保存后是否可以获取给定实体的哪些属性?
答案 0 :(得分:1)
在调用保存之前,客户端上的更改已经更改; save只是将这些更改提交给服务器。
但是,您可以在调用save之前捕获每个实体的已更改属性列表(及其原始值),如果保存成功完成,则使用此列表。请查看本页的“originalValues”部分
http://www.breezejs.com/documentation/inside-entity
function getOriginalValuesPropertyNames(entity) {
var names = [];
for (var name in entity.entityAspect.originalValues) { names.push(name); }
return names;
}