Linq to Entities和Custom属性

时间:2012-04-04 19:58:28

标签: linq-to-entities

我有一个从数据库表生成的实体。然后我使用分部类添加属性。 这个新属性是一对多关系的“描述”部分。 问题是这些实体集具有无数和四个属性。

我通常使用类似的东西:

db.entity.Select(e => e)

但在这种情况下,因为NEW属性不是表的一部分,所以它变为空或空。

我知道我可以这样做:

db.entity.Select(e => new entityType { field1 = e.field1, field2 = e.field2, etc….})

但正如之前所说的那样......一个无数的财产。

我的问题是:

有一些优雅的方法来分配新属性的值,让Linq填补其余的属性吗?

类似的东西:

db.entity.Select(e => new entityType { *= e.*, newfield = e.relation.desc})

当然,这不起作用,但这是主意。

谢谢!

埃德加。

1 个答案:

答案 0 :(得分:1)

这是我经常使用的方法。

   public partial class EntityName
    {

      public string NewProp 
     {

        get {return this.relation.Desc;}
     }

    }

然后在linq查询中我会做一个包含以确保相关属性出现,并且由于延迟加载我没有得到选择n + 1.

db.entity.Select(e => e).Include(x => x.relation);