0

在我们的 ASP.Net 项目中,我们有一个包含 3 个(甚至更多)级联组合框的视图,问题是我们应该如何设计我们的(基于 NHibernate)实体,因为组合框之间的关系只相关为了构建视图,并且考虑到 3 种实体类型的整个 catesian 乘积约为 2000 个实体。

所以问题实际上是:

  1. 即使集合没有额外的商业价值,我们是否应该将实体设计为层次结构(从而使它们成为任何其他场景的开销)

  2. 数据应该以扁平行的形式发送吗?保持实体更“干净”,但需要在视图侧进行额外编码

  3. 与后续请求分开(例如,仅在选择组合 A 后,从服务器获取组合 B 的数据)?使整个过程可能更高效,但以性能和缓存为代价?

有什么想法吗?

4

1 回答 1

0

首先,您不应该通过一个预期的 UI 来设计您的模型(实体)。今天是 3 个下拉菜单,明天它可以在一周内自动完成,并且一些新的花哨的“哇”组件,但你的模型应该保持稳定——它描述了实体之间的实际业务关系,而不是你当前的 UI。由此看来,我认为很明显你应该使用 2 和 3 的组合。

于 2011-11-09T08:56:05.157 回答