我正在构建一个包含许多不同对象(表)的应用程序,其中许多对象需要与“属性”对象建立一对多的关系。例如,我可以有五个不同的对象——A、B、C、D、E——并且每个对象都需要一个 Attributes 属性——A.Attributes、B.Attributes 等。
我的问题是,在 EF Code First 中构建它的最佳方式是什么?这个 Attribute 类最终可能有 15-20 个与之有关系的不同类。
目前,“父”类之一的配置如下所示:
HasMany(rdp => rdp.Attributes)
.WithOptional()
.WillCascadeOnDelete();
但是,这将在属性表上创建一个外键列(例如,“A_Id”、“B_Id”等)。因此,如果我有 20 个具有属性的不同类,则 Attribute 表将有 20 个不同的外键。
有没有更好的方法来构建这个?