gpt4 book ai didi

wcf - WCF 代理类中缺少方法参数

转载 作者:行者123 更新时间:2023-12-02 08:55:36 25 4
gpt4 key购买 nike

我有一个 WCF 方法定义如下:

[OperationContract]
Message GetSourceData(SourceDataQuery sourceDataQuery);

实际的实现是这样的:

public Message GetSourceData(SourceDataQuery sourceDataQuery)
{

IEnumerable<ExportRow> sourceData = repo.GetData();

var customBodyWriter = new CustomBodyWriter(sourceData);
var message = Message.CreateMessage(MessageVersion.Soap11, "GetSourceData", customBodyWriter);

return message;
}

SourceDataQuery 对象:

[MessageContract]
public class SourceDataQuery
{
[MessageBodyMember]
public int DataSourceId { get; set; }

[MessageBodyMember]
public int[] FiledIds { get; set; }

[MessageBodyMember]
public string Filter { get; set; }

[MessageBodyMember]
public string Sort { get; set; }
}

我的问题是,当我将此 WCF 服务添加到另一个项目并通过添加服务引用创建代理时,我的代理类具有 GetSourceData 方法,但缺少其输入参数。它不需要任何参数。我可以看到 SourceDataQuery 对象是在代理类中正确生成的。

知道为什么缺少输入参数吗?

最佳答案

尝试使用 DataContract 代替。它可能会解决您的问题

[DataContract]
public class SourceDataQuery
{

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

....
}

关于wcf - WCF 代理类中缺少方法参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5160133/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com