如何在Visual Studio for Mac中引用ASMX SOAP Web服务
Visual Studio 2022 for Mac 引用ASMX/WCF SOAP服务操作指南
VS 2022 for Mac 17.0.2版本默认的Connected Services面板仅内置OpenAPI、gRPC两类服务接入选项,没有原生WSDL/ASMX入口,可通过以下两种方式实现客户端类自动生成:
方法一:dotnet-svcutil命令行生成(推荐,兼容性最好)
- 打开系统终端,进入你的.NET Core项目根目录,先全局安装代码生成工具,执行命令:
dotnet tool install --global dotnet-svcutil - 安装完成后执行生成命令,将命令中的WSDL地址替换为你实际的服务地址(也可以传入本地存储的wsdl文件路径):
dotnet-svcutil https://你的服务域名/服务路径.asmx?wsdl -o Reference.cs - 命令执行完成后,项目根目录会自动生成
Reference.cs客户端代码文件,将该文件纳入项目编译范围即可,工具会自动为项目添加System.ServiceModel等必要的依赖包,无需手动引入额外DLL。 - 代码调用方式和Windows端Visual Studio添加服务引用生成的客户端完全一致,直接实例化生成的客户端类即可调用对应Web服务方法。
方法二:安装WCF服务引用扩展
- 打开Visual Studio for Mac,点击顶部菜单栏「扩展」选项,在官方扩展仓库中搜索
WCF Web Service Reference,安装完成后重启IDE。 - 重启后重新打开项目的Connected Services面板,即可看到WCF/SOAP服务的接入入口,按提示输入WSDL地址即可自动生成客户端代码。
注意:该扩展在17.0.2版本部分环境下存在加载失败、兼容性报错问题,如果安装后无法正常使用,直接使用方法一的命令行方案即可,生成的代码逻辑、依赖项完全一致。
内容的提问来源于stack exchange,提问作者slb
相关产品推荐
相关产品推荐

