【问题标题】:Lightswitch with WCF RIA Services datasource - Query operation [operation name] could not be found on the service带有 WCF RIA 服务数据源的 Lightswitch - 在服务上找不到查询操作 [操作名称]
【发布时间】:2013-07-04 04:20:12
【问题描述】:

我已经构建了我的 Lightswitch 应用程序以使用 WCF RIA 服务数据源。我能够引用我的 RIA 服务项目,并导入数据类型。但是,对服务的任何调用都会导致“无法在服务上找到查询操作 [操作名称]”。

真正可怕的是,我没有在搜索引擎中找到针对此错误的命中 - 所以我一定是做错了什么。

方法签名如下所示:

public IQueryable<md_SKURevMngtRRPPhantom> GetRRPPhantoms(string site, string category, long? segment, DateTime? entryDate){
//implementation here
}

我使用 Fiddler 来查看对服务的调用...它看起来像这样:

http://localhost:26132/RevMngtDomainServiceData.svc/GetRRPPhantoms()?site='610'&category='B'&segment=5L&entryDate=datetime'2013-07-04T00:00:00'

即使是对默认服务方法的无参数请求也会返回相同的错误。 这个默认请求定义如下:

[Query(IsDefault = true)]
public IQueryable<md_SKURevMngtRRPPhantom> GetAllRRPPhantoms(){
///implementation here...
}

我的 Lightswitch 项目如何正确地将 WCF RIA 服务作为数据源导入,但对同一服务的调用返回“在服务上找不到查询操作 [操作名称]。”?

【问题讨论】:

    标签: wcf-ria-services visual-studio-lightswitch


    【解决方案1】:

    事实证明我确实做错了什么......我返回的 md_SKURevMngtRRPPhantom 对象是 Lightswitch 项目的 DataSource 中定义的一个对象,我通过在我的 DomainService 中创建它的部分类来添加一个属性项目。看来这是个坏主意。

    我更改了 DomainService 项目以返回一个新定义的类而不是 md_SKURevMngtRRPPhantom 类,并且一切正常。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-22
      • 1970-01-01
      相关资源
      最近更新 更多