gpt4 book ai didi

c# - 使用 XML 调用 WCF 服务

转载 作者:行者123 更新时间:2023-11-30 12:34:18 25 4
gpt4 key购买 nike

我正在尝试调用 WCF 服务。

但是,我将请求正文作为 XML 文档。

例如,而不是这个

ListProductsRequest request = new ListProductsRequest();
request.Query = new RootQuery();
request.Query.Product = "milk";
request.Query.Group = "dairy";

ListProductsPortType client = new ListProductsPortTypeClient();
ListProductsResponse response = client.ListProducts(request);

我想这样做:

String xml = "<Root xmlns=\"urn:ns\"><Query><Group>dairy</Group><Product>milk</Product></Query></Root>";
var request = // read in to XmlReader or XmlDocument or whatever
ListProductsPortType client = new ListProductsPortTypeClient();
var response = client.ListProducts(request);

有没有办法使用生成的代理,具有为我处理数据层安全和传输的优势,但不使用代理对象?

谢谢,布莱希特

最佳答案

我认为您不能调用 WCF 服务并传递您想要的内容。

ListProducts 方法只接受一个 ListProductsRequest 对象。所以你必须创建这种对象。

String xml = "<Root xmlns=\"urn:ns\"><Query><Group>dairy</Group><Product>milk</Product></Query></Root>";
ListProductsRequest request = MappingObject(xml);
ListProductsPortType client = new ListProductsPortTypeClient();
var response = client.ListProducts(request);

并且在 Mapping 方法中,您可以使用 XML 来创建 ListproductRequest。

我不知道是否有其他方法可以做到这一点。

关于c# - 使用 XML 调用 WCF 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7501321/

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