2012-04-04 89 views
2

我有一個實體從數據庫表中生成。然後我使用分部類添加一個屬性。 這個新屬性是一對多關係的「描述」部分。 問題是這些實體組有像gazillion和四個屬性。Linq到實體和自定義屬性

我通常使用類似於:

db.entity.Select(e => e) 

但是在這種情況下,因爲新的屬性不是表的一部分,它來到空或空。

我知道我能做到這一點:

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

這是我通常使用的方法。

public partial class EntityName 
    { 

     public string NewProp 
    { 

     get {return this.relation.Desc;} 
    } 

    } 

然後在LINQ查詢,我會做一個包括以確保相關財產走來,我沒有得到一個選擇N + 1,由於延遲加載。

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

謝謝!那就是訣竅! – epaulk 2012-04-04 21:13:16