RIA服务加载相关实体

时间:2011-10-13 17:17:54

标签: entity-framework silverlight-4.0 wcf-ria-services

我有2个具有导航属性的实体。但是从silverlight加载时我遇到了问题。

让我们说:

实体1:Id,entity_2_id; 实体2:Id

所以我加载实体1:

_context.load(_context.getAllEntities1(), data =>
    {
         entities1 = data.Entities;
    }

此时entities1.First().entity2;为空。

之后我加载了Entites 2:

_context.load(_context.getAllEntities2(), data =>
    {
         entities2 = data.Entities;
    }

entities1.First().entity2;仍为空。

上下文不应该填补这些内容吗?

感谢。

更新问题:

是的,我们可以使用includes将相关数据加载到我们正在加载的实体。

但我要问的是,当单独加载它们时,上下文是否应该检测到我们加载了与其他加载实体相关的实体并填充它们的关系?

1 个答案:

答案 0 :(得分:1)

在Ria服务器端语法中,您必须做两件事来向客户端发送相关实体:

  1. 在Entadata1的元数据中,使用[Include]修饰属性Entity2(或任何导航属性)。

  2. 查询时(我猜Linq),引用关系:return this.ObjectContext.Entities1.Include("YourNavigationalPropertyHere");