1

我的数据库有一个通用结构,它是为了支持很多不同类型的东西而创建的。因此,有一个包含 5 列的 Product 表,但还有一个 AttributeGroup 和 Attribute 表。

AttributeGroup 指定了产品的额外属性类型,因此 AttributeGroup 中有 30 行,所有行都有一个与产品表相关的 ProductID。然后,对于产品的每个实例,属性表中都有一个条目,其中包含该产品实例的值。因此 Attribute 表有一个 AttributeGroupID 和一个 ProductID。

有一个存储过程返回 AttributeGroup 表的最常用属性以及 Product 表的初始 5 列。sproc 接受 ProductID 和一个额外的字符串输入,我们在 AttributeGroup Table 中放置一个以逗号分隔的额外字段名称的字符串。然后它返回一组 Product 的所有实例并连接 AttributeGroup 和 Attributes,使用 SQL Pivot 命令并返回列中的所有数据。

然而,有时数据有 8 列,有时 15 列。EntityFramework 调用存储过程,但只返回 8 个主字段。它使用复杂类型。无论如何,是否可以使用 List 或 Dictionary 对象在初始 8 上加载任何额外的列,以便可以将其绑定到某个视图。

4

0 回答 0