我可以将Interface用作Entity Framework的属性吗?

时间:2018-01-14 13:43:29

标签: entity-framework-core

我有以下类,它是数据库表的模型:

public class User : IUser
{
    internal int Id { get; set; }

    public string Name { get; set; }
    public string Email { get; set; }

    public ITest TestData { get; set; }
}

当我运行Update-Database命令时,它会抛出错误:

  

属性User.TestData属于接口类型(ITest)。如果是导航属性,则通过将此属性的关系强制转换为映射的实体类型

来手动配置该属性的关系

如果我不想让实际属性成为类,我可以手动配置此属性的关系如何以及在何处?

1 个答案:

答案 0 :(得分:1)

EF不支持接口,但您可以通过这种方式处理它。看一下这个解决方案How to use interface properties with CodeFirst