我正在构建一个在一个页面中有多个viewModel的淘汰应用程序。
到目前为止,我一直在嘲笑数据,但我现在正在构建将运行它的API。
我的问题是我如何处理与API有关的复杂viewModel。
例如,我有一个“添加公司”页面,其中包含以下标签: -
Company info (name, address, etc.)
People at company (multiple people)
Insurance Documentation (3 different types)
我目前将每个都作为单独的viewModels。
当我按下保存时,我现在很困惑,最好的办法是什么。
如果我发送捆绑在一起的所有3个viewModel(将它们添加到一个主viewModel),那么很容易确保所有ID都排成一行,但这似乎不是模块化的或者是个好主意而且打破了'API'的想法中心”。
但是,如果我将每个viewModel发送到不同的API端点,我如何确保ID匹配正确(人员 - >公司)等。
目前我正在考虑两个选项: -
当按'添加新'时,在数据库上创建一个空白公司并获取其ID - >用它来匹配所有东西。
当我按保存时,首先发送新公司,然后当响应回来时(希望)好,然后使用现在正确的ID将其余信息上传到各自的终点。
两者看起来都很混乱,所以我想知道“接受”的最佳方法是什么?
答案 0 :(得分:1)
您的第二种方法是我如何做,按Save将首先发送公司模型。然后,一旦您收到带有公司ID的“确定”回复,您就可以在回调中将其添加到其他模型并发送。
没有什么比这简单,只是标准的异步行为。