HI 当我检索实体的数据时,我需要获得一些额外的信息。但是,额外的属性在不同的表中。我创建了一个具有这些额外属性的分部类。 如何让EF填充额外的属性。
感谢
答案 0 :(得分:0)
您必须手动填充它们。一旦属性不是映射实体的一部分(它们可能不是它们),EF就不会对它们做任何事情,因为它不知道它们。
另一种方法是不使用原始实体并使用一些自定义的Linq-to-entities查询填充非映射或匿名类型。最后一个选项是使用实体模型中定义的特殊只读实体,并在EDMX文件中手动创建QueryView。
答案 1 :(得分:0)
跟随Ladislav的职位。最简单的方法?创建一个包含所需属性的模型/类,它实际上充当数据库视图,然后当您将模型发送到视图时,可以使用linq和join将其转换为视图模型/对象。
var m = (your models joined).select(x=> new Model(properties....))
.(First<Model>(), AsEnumerable<Model>(), etc);