使用 MVC4,Entity Framework 5,我希望每种类型都使用一个接口,
所以我有我的接口,一个对另一个具有“导航”属性;
Ifoo 接口有:
IUser User {get; set;}
int UserID {get; set;}
假设 IUser 只有 UserID 和 UserName 属性。
在一个类型中实现 Ifoo 接口时,我使用
public Iuser User {get; set;}
public UserID {get; set;}
然后,使用 EF5,我渴望加载导航属性,使用实现 IUser 的用户类型:
db.Foo.where(x => x.id == id).Include(x => x.User)
但它告诉我:
指定的包含路径无效。EntityType 'Dal.Foo' 没有声明名为 'User' 的导航属性。
但是,如果我将两个接口都更改为直接实现类型,则效果很好。
有没有办法解决这个问题,所以我可以利用接口?