我在实体框架中有一个关联,但我需要向它添加一个属性/属性。无论如何,我在实体框架中执行此操作时遇到问题(我更愿意将其保留为关联,但被迫将其更改为实体以便为其添加属性),但在这种特定情况下,我想知道是否有更好的方法来做到这一点。
关联表看起来很简单:
CREATE TABLE EntityA_EntityB (
aId uniqueidentifier,
bId uniqueidentifier
)
客户想要一种方法来优先考虑或排序相关的 EntityB。我认为最好的方法是在该表中添加一个订单列(int),使其看起来像这样:
CREATE TABLE EntityA_EntityB (
aId uniqueidentifier,
bId uniqueidentifier,
order int
)
在这种情况下,所有三列都将构成主键。这似乎没问题,但是它给使用这个系统的任何代码增加了相当多的复杂性,因为我必须找到EntityA.EntityBs
集合中最大的“订单”号,而不是仅仅将相关的 EntityB 添加到 EntityA 中,并将其递增为了添加一个新的关联。
我可以使 order 列成为一个标识,但这会始终递增 order 列,而不管 aId 或 bId 的值是什么。我想要在插入 aId 和 bId 的全新组合时插入 0 订单的东西。
有没有更好的方法来做到这一点?
谢谢!