使用MVC4,Entity Framework5,理想情况下,我希望每种类型都利用一个接口,
所以我有我的接口,一个有一个“导航”属性到另一个;
接口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)
但它告诉我:
指定的包含路径无效。用户'Dal.Foo‘没有声明名为’EntityType‘的导航属性。
但是,如果我将这两个接口都更改为直接实现该类型,它就能正常工作。
有没有办法绕过这个问题,让我可以利用接口?
发布于 2013-10-11 14:19:21
我知道这可以使用分部类来完成。因此,您可以使用分部类并忽略该接口,也可以在分部类中实现该接口,然后继承它。我建议您研究一下T4模板。
https://stackoverflow.com/questions/14278841
复制相似问题