深入探索 EntityDataSource 控件的数据绑定与操作
1. 为何在启用延迟加载时需要使用 Include 属性
EntityDataSource 控件会自动禁用 ObjectContext 上的延迟加载,这就迫使我们使用 Include 属性。尽管这一过程在后台默默进行,可能会让我们感到意外,但实际上这对我们是有益的。如果不使用 Include 属性,仅仅是填充网格以显示相关数据,就会导致对数据库进行大量的查询。尤其是在页面渲染期间访问相关数据时,这种情况更为明显。而在页面渲染完成后,从浏览器进行延迟加载数据是不可能的,所以最好禁用延迟加载,避免误以为可以从客户端进行延迟加载。
2. 使用新的 EntityDataSource 控件编辑实体引用导航属性
要编辑 PrimaryActivity 字段,需要两个元素:一个新的 EntityDataSource 控件来提供活动列表,以及网格中的 控件。具体操作步骤如下:
1. 向表单添加一个名为 ActivityDataSource 的新 EntityDataSource 控件。
2. 重建项目,使新的数据源能够识别模型。
3. 配置该控件,使用 BAEntities 作为其连接字符串和实体容器。
4. 选择 Activities 作为 EntitySetName,在属性框中保持“全选”选中状态。不要勾选启用插入、更新或删除的复选框,因为该控件仅用于选择。
5. 完成数据源向导。
为了让活动选择列表更有用,可以对数据进行排序。可以使用 EntityDataSource 控件的 OrderBy 属性来实现,需要使用与查询构建器方法相同的 Entity S
超级会员免费看
订阅专栏 解锁全文


被折叠的 条评论
为什么被折叠?



