我有一个像
ModelA 包含一个集合。
ModelB 包含一个 Collection 作为反向引用。如果我使用 Include("ModelB") 进行查询,则由于循环引用而失败。不好,但我通过为每个元素设置 ModelB.List=null 解决了这个问题。
现在的问题是提交更改后的 ModelA 树:我将 ModelB-entities 添加到 ModelA.ModelB[]。现在 UpdateEntity 函数抱怨它无法添加声明为静态的 ModelB 类型的元素。JSON 反序列化器正在创建静态数组。
如何结合 upshot/MVC4 提交不完全平坦的数据模型?因为现在不可能创建自己的 DTO 对象,您可能会发现我现在卡住的东西......
在更好地调查错误之后,我认为问题在于循环反向引用:
ModelA->ModelB->ModelA 正在破坏数据的存储。“无法将 ModelA 类型的数据添加到 ModelB 类型”。正如我提到的,反向引用设置为 Null,因为循环引用序列化问题......
我希望这将是一种更简单的方法,可以更轻松地手动使用我拥有 mroe 控制的 DTO 对象。
另请参阅: MVC 4,旅程开始的Upshot 实体循环引用...