2

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

我通常使用类似的东西:

db.entity.Select(e => e)

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

我知道我可以这样做:

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})

当然,这是行不通的,但这是想法。

谢谢!

埃德加。

4

1 回答 1

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);
于 2012-04-04T20:05:04.430 回答