gpt4 book ai didi

c# - 使用 WCF 和 .NET 4.0 在 C# 中实现 SOAP 客户端

转载 作者:太空狗 更新时间:2023-10-29 21:24:36 25 4
gpt4 key购买 nike

我在开始使用 .NET 4.0 中的 WCF 时遇到了问题。这是我的情况:

我用 PHP 创建了一个小型 SOAP 服务器。我有一个 C# 项目,我想在其中连接到此服务器并启动 SOAP 通信。

我的问题是,我不知道如何在 C# 中执行此操作。我找不到 WCF 的正确介绍。有很多方法可以做到这一点。但是我找不到合适的类和引用来添加到我的 C# 项目中。是否有任何教程如何在 C# 中实现此目的?我搜索了很多,但没有找到对我有帮助的东西。

我想在运行时从我的 SOAP 服务器加载 WSDL,发出 SOAP 请求,检索答案并完成。但是我可以从哪里开始呢?有关 WCF 的 MSDN 站点只会让我更加困惑。

编辑:可能没有必要在运行时获取 WSDL 文件。所以这不再需要了。
我使用 svcutil 创建类并将其嵌入到我的项目中。我还没有能够测试它,因为我在使用 MySQL 数据库时遇到了一些问题(它正在运行并且可以从 mysql 命令行工具或 mysqladmin 访问,但我无法用任何其他程序连接到它......) .我会在知道它是否有效后立即报告。

编辑 2:我遵循了 Kevs 的方法,最终效果非常好。我的最后一个问题是,我在 DLL 中使用了服务类。我也需要在使用 DLL 的程序中使用 app.config。在我这样做之后,效果很好。

最佳答案

执行此操作的最快方法是在客户项目的“引用”下右键单击“添加服务引用”。将对话框指向 WSDL 的位置并单击 Go:

enter image description here

我使用的 URL 用于 .NET 服务引用的样式,您需要替换为您的 PHP SOAP 服务用来公开其 WSDL 的任何内容。

这样做会生成一个客户端代理,您可以将其实例化以与您的网络服务进行通信。

要访问该服务,您可以执行类似的操作(尽管您的具体实现不会相同):

MyService.MyWebServiceSoapClient ws = new MyService.MyWebServiceSoapClient();
string result ws.DoThing();

特别注意代理类名的SoapClient部分,这是由代理代码生成器添加到soap服务名的名称中。

代理生成器还将在您的 web.configapp.config 文件中创建所有必要的配置。

关于c# - 使用 WCF 和 .NET 4.0 在 C# 中实现 SOAP 客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5976044/

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