breeze - 如何执行自定义保存的示例

时间:2015-04-10 21:36:09

标签: breeze

我已经阅读了关于自定义来自客户端保存呼叫的微风的文档 - http://www.getbreezenow.com/documentation/saving-changes - 什么是描述听起来就像我想要做的那样 -

  

"但是,您可能需要执行特定的业务流程   保存某个实体星座。也许实际存储   数据库中的更改只是更大服务器端的一部分   流程。你真正拥有的是一个"命令"包括数据库   。更新"

我真的不知道如何将其付诸实践。说我有实体" A"当我保存时,需要一些自定义业务流程。好吧,我可以在客户端上拆分类型A的实体,并执行类似

的操作
var so = new SaveOptions({ resourceName: "myCustomSave" });
myEntityManager.savechanges(Aentities, so);  
myEntityManager.saveChanges(everythingButAEntities);

但接下来我只是点击了#34; myCustomSave"使用JObject" saveBundle"。

我是否反序列化为实体,执行自定义业务流程,然后序列化为savebundle并发送以保存?

并说实体A有一个子实体C - 如果通过标准的getChanges保存C,关系如何更新?

我知道我可以intercept the save request并覆盖BeforeSaveEntity方法,但有点像将业务逻辑放在数据层中。这似乎是最简单的方法。

1 个答案:

答案 0 :(得分:0)

查看 BeforeSaveEntities 方法。它需要一个 saveMap 参数,您可以在保存过程中使用新添加/修改的实体进行更新。

http://www.getbreezenow.com/breeze-sharp-documentation/contextprovider