1

我试图让我的 SSRS 报告调用我的 WCF 服务,但是当我这样做时,该参数始终为空。似乎我一直在关注的大多数示例都没有使用参数对象,在我的情况下它们只会使用 int PONumber 和 int itemNumber 参数。有没有办法使用对象参数?

我的服务合同:

[ServiceContract(Namespace = "http://schemas.XXX.com/WMS/WMSCustom/ReportingService")]
public interface IQAReportingServiceContract
{
    [OperationContract]        
    List<QAItemDetailResponse> GetQAItemDetail(QAItemDetailRequest request);
}

请求对象:

[DataContract]
public class QAItemDetailRequest
{
    [DataMember]
    public int PONumber { get; set; }

    [DataMember]
    public int itemNumber { get; set; }
}

我的 SSRS 数据集查询:

<Query>
<Method Name="GetQAItemDetail" Namespace="http://schemas.wegmans.com/WMS/WMSCustom/ReportingService">
<Parameters>
<Parameter Name="PONumber"></Parameter>
<Parameter Name="itemNumber"></Parameter>
</Parameters>
</Method>
<SoapAction>http://schemas.XXX.com/WMS/WMSCustom/ReportingService/IQAReportingServiceContract/GetQAItemDetail
</SoapAction>
</Query>
4

1 回答 1

0

是的。您应该将 [DataContract] 和 [DataMember] 属性分别更改为 [MessageContract] 和 [MessageBodyMember]。此外,它有助于设置 MessageBodyMember "Order" 参数。

于 2013-01-30T19:09:24.273 回答