【问题标题】:Retrieving Navigation Properties through WebGet method in WCF Data Service通过 WCF 数据服务中的 WebGet 方法检索导航属性
【发布时间】:2014-12-04 08:05:19
【问题描述】:

朋友们! 我在使用 WebGet 方法获取 WCF 数据服务中的导航属性时遇到问题。

  1. 我关闭了 ProxyCreationEnabled 和 LazyLoadingEnabled
  2. 我有[DataContractAttribute(IsReference=true)][DataMember] 属性。
  3. 我在服务端看到填充的属性,但在客户端看不到它们。
  4. 我创建了常用的 WCF 服务(基于 [ServiceContract] 属性),并在其客户端中看到了填充属性。

我做错了什么?非常感谢!

【问题讨论】:

    标签: c# wcf-data-services navigation-properties webget


    【解决方案1】:

    如果实体不是 ComplexTypes,而是 EntityTypes(可以从它们自己的集合中检索),默认情况下它们不会被填充。你需要使用:

    <host>/urlForResource?$expand=Property1,Property2
    

    如果这不起作用,请检查您正在实现的 OData 的版本以及您正在使用的 WCF 数据服务的版本。如果您使用旧版本,$expand 可能不会在 WCF 数据服务中实现。

    此外,在 WebApi 的 OData 服务中,必须添加一个 [EnableQuery] 属性以支持 $expand 等参数,寻找在 WCF DataServices 上启用查询选项的方法。

    【讨论】:

      猜你喜欢
      • 2020-09-06
      • 1970-01-01
      • 2011-08-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-06
      相关资源
      最近更新 更多