2013-05-12 174 views
3

我总是使用属性将我的实体的属性映射到其相应的列。这里有一个例子:在实体框架中映射多对多关系与属性

[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,但我不想在我的实体类之外进行映射。是否有可能将这些关系与属性进行映射?

回答

1

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

否。没有适用于您的属性的交汇表的类。一旦您使用直接多对多映射(其中联结表隐藏在导航属性后面),您需要使用流畅的API。

也许EF6将允许通过自定义约定,但我最初的经验与处理外键名称与约定不成功,所以我猜结点表将是相同的故事。

+0

好的,谢谢。我会看看自定义约定,因为我已经在使用EF6了。 – android 2013-05-13 15:04:50