Mat*_*mes 7 .net c# linq-to-sql
如果我有一个延迟加载与非常大的对象的关联的对象,有没有办法在延迟加载时进行处理?我以为我可以使用DataLoadOptions中的AssociateWith或LoadWith,但是对于你可以在那些中做什么有非常非常具体的限制.基本上我需要在EntitySet <>决定加载关联对象的时候得到通知,所以我可以捕获该事件并对加载的对象进行一些处理.我不想在加载父对象时简单地遍历EntitySet,因为这将强制加载所有延迟加载的项目(完全失去延迟加载的目的).
小智 2
订阅 ListChanged 事件
EntitySet<T> 公开一个名为 ListChanged 的事件,您可以使用该事件来检测是否正在添加项目。评估 ListChangedEventArgs 的 ListChangedType 属性。以下是 ListChangedType 枚举中可用值的链接。
只要避免请求枚举器,就不会存在强制执行加载的危险。
http://msdn.microsoft.com/en-us/library/system.componentmodel.listchangedtype.aspx
| 归档时间: |
|
| 查看次数: |
1068 次 |
| 最近记录: |