【发布时间】:2014-06-12 02:53:28
【问题描述】:
我有一个复杂的对象结构,它具有描述产品配置的多级嵌套关系。配置会随着时间的推移而改变,我需要能够在将来的任何时候引用不同的配置。在任何时候,整个系统都与产品的特定版本相关联,并以某种方式抽象为产品版本的整个概念。
实现这一点最直接的方法是在每次请求新版本时克隆产品的整个结构并将不同版本链接在一起。然而,就数据库负载而言,这是否有点过头了。有没有更好的办法?
我还考虑过单独跟踪更改并在请求版本时重建产品,但实施起来似乎相当复杂,并且要正确处理多级嵌套关系。
或者
在数据库中保存最少的元数据,以跟踪版本并使用 GIT 等工具序列化整个产品结构。
【问题讨论】:
标签: c# sql git database-design architecture