0

有没有办法使用具有任意连接的实体数据源作为可编辑网格视图的源?

我正在使用实体框架和 linq to sql。

我想要一个当前可使用“内置”编辑模式和分页编辑的网格视图,以仅显示在第二个表(订单簿)中有条目的项目。在 SQL 或 EDMX 模型中,这两个表之间没有关系,我也无权访问。

4

1 回答 1

1

使用这样的东西;它使用 ID 列将视图绑定到表对象。绑定到 querycreated 事件。和!!确保在创建 EntityDataSource 时没有应用任何过滤。如果您确实选择了它。[XYZ] 那么它会返回一个无法进行类型转换的匿名类型。注意 e.Query.Cast()

 protected void EntityDataSource1_OnQueryCreated(object sender, QueryCreatedEventArgs e)
        {
            var filters = DomainFilters;

            if (filters.Count > 0)
            {
                e.Query = from view in e.Query.Cast<MAPPING_VIEW>()
                          join bo1 in SecurityContext.MAP_TYPE
                              on view.MAP_TYPE_ID equals bo1.MAP_TYPE_ID
                          where filters.Contains(bo1.DOMAIN_ID)
                          orderby view.NAME
                          select view;
            }
            else
            {
                e.Query = from view in e.Query.Cast<MAPPING_VIEW>()
                          orderby view.NAME
                          select view;
            }
        }
于 2013-10-02T19:47:25.483 回答