我总是使用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; }
}
但我仍然不知道,我如何映射多对多关系,表和列名称与属性不匹配。
我知道我可以在DbModelBuilder
中使用DbContext
,但我不想在我的实体类之外进行映射。是否有可能将这些关系与属性进行映射?
答案 0 :(得分:1)
我知道我可以在DbContext中使用DbModelBuilder,但我不知道 想要在我的实体类之外进行映射。是不是以某种方式 是否可以将这些关系与属性进行映射?
没有。联结表中没有可以应用属性的类。一旦您使用直接多对多映射(其中联结表隐藏在导航属性后面),您需要使用流畅的API。
也许EF6会通过自定义约定来实现这一点,但我最初使用常规处理外键名称的经验并不成功,所以我猜联结表将是同一个故事。