使用EF 5,代码优先。

我想对实体建模,以使导航属性仅存在于关系的一侧。

因此,如果我有一个表Widget和一个表WidgetType:

public class Widget
{
    public int Id { get; set; }
    public int WidgetTypeId { get; set; }
    public WidgetType WidgetType { get; set; }
}

public class WidgetType
{
    public int Id { get; set; }
    //note there is no collection of Widgets here
}

public class WidgetMap : EntityTypeConfiguration<Widget>
{
    public WidgetMap()
    {
        HasKey(t => t.Id);
        //totable, etc.

        HasRequired(t => t.WidgetType); //what else is needed?
    }
}

我永远都不想从widgetType的 Angular 获取小部件,因此(无论如何对我而言)在WidgetType实体上没有导航属性是有意义的。

如何完成代码示例中指出的映射代码,而不必向WidgetType添加属性?这可能吗?

最佳答案

根据评论的要求,这是我的答案。

你应该试试:

HasRequired(t => t.WidgetType).WithRequired().HasForeignKey(t => t.FKField);

07-24 13:56