【发布时间】:2020-11-30 04:38:12
【问题描述】:
我有一个名为Customer 的表,其中有几个名为National Code 和Name 的列。它还具有许多其他功能,称为Contact Numbers 和Recommenders,因为Contact Numbers 和Recommenders 的数量不止一个,因此您需要一些其他表来存储它们。
还假设我有其他表,例如 Customer,每个表都有多个大于 1 的属性。
- 您对存储这些值有何建议?
- 在一个来源中,建议为每个表使用一个名为
StringValue的表来存储。EF core有没有办法实现StringValue而无需编写额外的代码?
示例:
Customer Table:
CustomerId Name NationalCode
------------------------------------------------------------------------
1 David xxxx
------------------------------------------------------------------------
StringValue Table:
StringId CustomerId StringName Value
------------------------------------------------------------------------
10 1 PhoneNumber 915245
11 1 PhoneNumber 985452
12 1 PhoneNumber 935446
13 1 Recommenders Mr Jhon
14 1 Recommenders Mr bb
------------------------------------------------------------------------
【问题讨论】:
-
在选择 EAV(实体属性值)路径之前,请先进行研究以了解其含义。它非常灵活 - 以相当复杂和低效率为代价。
-
感谢您的提示。您认为什么是灵活高效的?
标签: database postgresql asp.net-core entity-framework-core ef-core-3.1