【问题标题】:RIA Services and Relationships in Silverlight 3Silverlight 3 中的 RIA 服务和关系
【发布时间】:2010-02-21 01:05:54
【问题描述】:

我终于设法使用 Silverlight、AD​​O.NET 实体和 RIA 服务来处理加载信息,但我仍然无法获取有关关系的信息。

例如,想象一个产品,该产品具有多个类别的属性。我们将它们称为 ProductAreas。

Product 对象有一个名为 ProductAreas 的属性(由于它们的关系),但是当我调用时:

ctx.Load(GetProductsQuery());

(其中 ctx 是我的 DomainContext),返回的 Product 对象具有 ProductAreas 属性,但它不包含任何元素,在我的情况下这是一个非常严重的问题。

所以问题是:我如何访问这些关系?

【问题讨论】:

    标签: silverlight ado.net entity-relationship wcf-ria-services


    【解决方案1】:

    我不确定您的GetProductsQuery() 方法是做什么的,但您应该可以在查询中使用.Include('ProductAreas') 方法。如果您使用该方法的内容更新您的问题,我会尽力提供更多帮助。

    【讨论】:

    • 谢谢,本!这很棒。你把我带到了我需要去的地方。我在下面详细说明了您的答案,因为仅添加 include 并没有包含信息,但与 include 属性结合使用。
    【解决方案2】:

    从技术上讲,这不是这个系统应该的工作方式,但我想扩展你的答案,同时给予它应得的荣誉,因为它引导我到达我需要的地方。

    解决方案是在 GetProductsQuery() 方法中使用

    return this.ObjectContext.Products.Include("ProductAreas");
    

    而不是

    return this.ObjectContext.Products;
    

    在元数据文件中,转到 Products 类,并在 ProductAreas 属性上方添加 [Include()],使其看起来像:

    [Include()]
    public EntityCollection<ProductAreas> ProductAreas;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-02-05
      • 1970-01-01
      • 2011-03-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多