指定表名的不同方法

时间:2019-06-10 10:24:57

标签: entity-framework-core

我有一个Book和一个Author实体。在Book中仅将DbSet实体定义为DbContext

public DbSet<Book> Books { get; set; }

Author类是Book类的依赖项,没有明确列出在DbContext中。因此,在数据库级别上,我最终得到了Book实体的表Books(强调复数),但是只有Author而不是Author实体的Authors。现在,至少有3种方法可以为Author实体(作者)指定表名:

  1. 类注释[Table("XYZ")]
  2. 使用ModelBuilder
  3. Author类明确地作为DbSet添加到DbContext

这些以不同方式实现作者作为表名的利弊是什么?特别是:如果我在DbContext中显式列出表,只是为了在其中复数名称,是否会因此而导致性能损失? (让我们想到的表不仅仅是这个示例中将添加到DbContext中的单个Author实体)

0 个答案:

没有答案