用实体框架中的属性映射多对多关系

本文关键字:映射 关系 属性 实体 框架 | 更新日期: 2023-09-27 18:13:06

我总是使用Attributes将实体的属性映射到相应的列。下面是一个例子:

[Table("news_entries")]
public class News
{
    [Key]
    public int Id { get; set; }
    [Column("d_date")]
    public DateTime Date { get; set; }
    [Column("m_text")]
    public string Text { get; set; }
    [Column("id_user")]
    public int UserId { get; set; }
    [ForeignKey("UserId")]
    public User User { get; set; }
}

但是我仍然不知道,如何映射一个多对多关系,其中表和列名与属性不匹配。

我知道我可以在我的DbContext中使用DbModelBuilder,但我不想在我的实体类之外做映射。是否有可能将这些关系也映射到属性中?

用实体框架中的属性映射多对多关系

我知道我可以在我的DbContext中使用DbModelBuilder,但我没有我想在实体类之外进行映射。不知何故是否可以将这些关系映射到属性中?

。连接表没有可以应用属性的类。一旦使用直接的多对多映射(连接表隐藏在导航属性后面),就需要使用流畅的API。

也许EF6将通过自定义约定允许这一点,但我最初使用约定处理外键名的经验并不成功,所以我猜连接表将是相同的故事。