2013-03-10 35 views
0

是否可以根据来自数据库的EF生成的类中的另一个属性(列)的LINQ添加汇总属性(无数据库列),并且此属性在更新模型时不更新(从类删除或从类中删除)从数据库(因为此属性(cloumn)不在数据库上)EF上的摘要列

回答

0

是的。由实体框架生成的Entitied分类总是标记为partial。它允许您用自己的属性或方法扩展功能。

假设您的实体类名为Post。因为它不是设计器生成的文件的一部分时,它的再生也不会被覆盖

public partial class Post 
{ 
    public int Average 
    { 
     get 
     { 
      return this.Items.Average(); 
     } 
    } 
} 

:你可以像与代码扩展它。但是,有一个要求使它工作:Post类的自定义部分必须与EF生成的代码具有完全相同的名称空间。

0

尝试在partial class的属性上使用[NotMapped]属性。这将被实体框架忽略。

public partial class EntityName 
{ 
    [NotMapped] 
    public int CalculatedProperty 
    { 
     get 
     { 
      return Numbers.Sum(); 
     } 
    } 
}