2013-04-28 87 views
0

我有一个EF代码第一个实体,并且想对其计算列。我需要首先完成所有现有的数据库加载的值,所以我不能从属性集合中调用这个值。是否有一个事件或某种方式的对象可以知道它完成加载数据库的所有数据,所以可以执行计算?EF代码优先 - 从数据库加载完成后更改数据

回答

0

您应该看看LazyLoading,它将确定何时以及如何实际检索数据。默认情况下,数据在您首次调用时加载。意思是如果你要做这样的事情。当你打电话给他们,像这样

var result = DB.where(x+> x.id == 1); 

结果的领域将被载入:

var test = result.1stField; //1st field values will actually be loaded as this call is made. 

但是,您可以设置它,以便当您第一次拨打电话,所有的数据在一次加载,这应该阻止执行,直到加载所有值,这会给你执行计算所需的时间。