我有一个接受JObject的breeze控制器,是否有一种简单的方法可以将JObject反序列化为强类型源EntityInfo对象,而无需经过保存更改/保存更改之前。我只想获得JObject有效负载所指的对象。 谢谢你的帮助。
我最终使用了相关问题中概述的方法。 Uninitialised JsonSerializer in Breeze SaveBundleToSaveMap sample
答案 0 :(得分:1)
看一下Breeze.ContextProvider类的CreateEntityInfoFromJson方法中的代码。它是受保护的 - 内部的,因此您需要复制代码或使用反射调用它。 使用风险自负。
breeze savechanges代码使用一个名为SaveWorkState
的公共类,它使用两个参数构建:ContextProvider
和JArray
。了解对此的期望是什么
JArray
,看看"实体"在保存更改期间发送到服务器的JSON中的属性。
构建SaveWorkState
后,您可以通过EntityInfo
属性访问EntityInfoGroups
个对象。
之前从未尝试过任何一个选项,通过查看breeze.server.net代码找到了这些选项。
答案 1 :(得分:0)
是的,这是可能的......而且也很容易。我非常详细地回答了您提到的相关SO问题Uninitialised JsonSerializer in Breeze SaveBundleToSaveMap sample。