C# 实体框架中识别关系的正确实现?

C# 实体框架中识别关系的正确实现?,c#,entity-framework-4,C#,Entity Framework 4,假设我有一个实体Author,它有一个可以写入0的名称。。1.或者许多实体书籍。书必须由一位作者撰写,而谈论一本没有作者的书是没有意义的 这(我相信)将被归类为一种识别关系。对于EntityTypeConfiguration,以下是实现此标识关系的正确方法吗 public BookMapping() { HasRequired(book => book.Author) .WithMany(author => author.Books) .HasForeignKey

假设我有一个实体
Author
,它有一个可以写入0的名称。。1.或者许多实体
书籍
必须由一位
作者
撰写,而谈论一本没有
作者的
是没有意义的

这(我相信)将被归类为一种识别关系。对于
EntityTypeConfiguration
,以下是实现此标识关系的正确方法吗

public BookMapping()
{
    HasRequired(book => book.Author)
   .WithMany(author => author.Books)
   .HasForeignKey(book => book.AuthorID);
}

它不是识别关系。这只是常见的一对多关系。要进行标识,还必须映射由
BookID
AuthorID
组成的复合主键

HasKey(book => new { book.BookID, book.AuthorID });