所以我有一个这样的结构:
Widget:
Component 1:
Component 2:
Component 3:
...
Component n:
我正在构建一个 ASP.NET MVC Web 应用程序,作为其功能的一部分,它允许用户创建一个 Widget 对象并将 Component 对象(具有许多属性)分配为 Widget 对象的“子级”。用户可能没有组件或可能添加 50 个。此外,他们可能编辑一个 Widget 对象并任意删除或更改组件属性。
应用程序中的一切都在工作,但我对它的结构方式不满意。目前在提交时,我提交所有组件及其所有属性。我删除当前与此 Widget 关联的所有组件,然后枚举每个组件并重新添加它。
...但我对这个解决方案不满意。对于某些具有大量组件(例如 500 个)的 Widget,即使用户只更改了一个组件,此过程也可能非常耗时。但是替代方案(在每个组件的基础上跟踪创建/更新/删除)似乎构建起来真的很痛苦。
我确信我可以做得更好,所以我很想知道可以应用什么样的模式来解决这个问题(一般来说),特别是在 Web 应用程序的上下文中。