首页 > 编程语言 >C# 利用VS自带的WSDL工具生成WebService服务类

C# 利用VS自带的WSDL工具生成WebService服务类

时间:2022-10-30 13:57:40浏览次数:38  
标签:文件 WebService C# 路径 vs 生成 VS wsdl WSDL

WebService有两种使用方式,一种是直接通过添加服务引用,另一种则是通过WSDL生成。 添加服务引用大家基本都用过,这里就不讲解了。 那么,既然有直接引用的方式,为什么还要通过WSDL生成呢? 因为通过WSDL生成,就只有一个.cs 文件,便于管理,更简洁。

 

一、生成步骤

1. 打开vs开发控制台, 如下图:

 

2. 在控制台中输入如下指令

wsdl /language:c# /n:Demo /out:d:/TestService.cs http://www.abc.com/webservice/test?wsdl

 参数说明如下

/language:C#    指定编程语言为 C#

/n:Demo             指定名称空间为 Demo

/out:             指定文件保存路径和文件名 d:/TestService.cs

http://www.abc.com/webservice/test?wsdl 为wsdl文件路径,也可以是物理路径(如:C:/test.wsdl)

 

3. 指令输入完成之后,按回车,执行成功如下图所示,此时去F盘就能找到一个生成的TestService.cs类文件了

 

 

二、将wsdl.exe配置在vs工具菜单中

由于每次打开vs开发控制台,并输入一长串的指令会比较麻烦,所以为了提高效率,我们将其配置在工具菜单中,让使用更方便。

 

配置步骤:

1. 打开vs -> 工具菜单 -> 外部工具

2. 点击添加,详细配置如下图

 

说明:

a. 命令填写的是wsdl.exe程序在电脑中的路径  C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\wsdl.exe

b. 参数和上面讲的一致,不再赘述

c. 初始目录,选择 [项目录]。 项目录的作用就是,当你选中解决方案中的某个文件夹,那么生成的类文件就会保存在你选中的文件夹下,如果选中的是文件,则生成的类文件保存在和所选文件同级目录下。

 

3. 点击应用按钮,配置完成。

 

配置完要如何使用呢?配置完后,点击工具菜单,会看到如下图:

 

点击 WEBSERVICE生成工具,出现如下图

 

我们把 "命名空间" 换成自己真实想要的名称空间,我这里写Test,然后在 /out: 后面敲一个空格(记住一定要空格),之后填写wsdl文件路径(可以是物理路径也可以是网络路径)。完成后如下图

 

点击确定就可以了,在vs底部的输出窗口中可以看到详细信息。

原文链接:https://www.cnblogs.com/similar/p/6531183.html

标签:文件,WebService,C#,路径,vs,生成,VS,wsdl,WSDL
From: https://www.cnblogs.com/hushzhang/p/16841122.html

相关文章

  • 找到多个名为spring_web的片段。这是不合法的相对排序。有关详细信息,请参阅Servlet规
    问题描述:解决办法:1:检查pom.xml中是否包含多个spring-web字段;2:删除掉多余的spring-web.jar,保留一个即可;......
  • 洛谷 P1789【Mc生存】插火把
    萌新写的代码,长但模块化#include<stdio.h>#defineROW100#defineCOLUMN100intmap[ROW][COLUMN];/*函数测试数据={1,1,1,0,0,1,1,0,1,0,1,1,1,0,0,0,0,0,0,0......
  • CSP-S 2022 游记
    CSP-S2022游寄Day-2模拟赛被薄纱,矩阵快速幂啥的全部忘完了。恶补矩阵快速幂。写了贪吃蛇和一道前缀和优化DP。Day-1考试前一天真的不想做题了,不过还是被zjj拉......
  • LeetCode 2458. Height of Binary Tree After Subtree Removal Queries
    原题链接在这里:https://leetcode.com/problems/height-of-binary-tree-after-subtree-removal-queries/题目:Youaregiventhe root ofa binarytree with n node......
  • C# HashSet不要遍历或者使用泛型扩展方法
    C#的接口IEnumerable定义了GetEnumerator方法,它的拓展方法是都是基于这个迭代器实现的。当我们使用比如,First、Where等泛型方法时,会实例化一个迭代器Enumerator包含......
  • 玩客云 docker安装homeassistant
    dockerpullportainer/portainer:latest dockerrun-d\--name="hass"\--privileged\--restart=unless-stopped\-eTZ='Asia/Shanghai'\-v/home/hass/......
  • ACL配置实验
    一、实验目的1.掌握ACL的分类及作用;2.掌握ACL的配置方法;二、实验的仪器、设备、材料二层交换机、路由器、PC机三、实验内容及实验原理    实验拓扑图:现在需......
  • centos docker 部署.net6项目
    1.生成dockerfile文件FROMmcr.microsoft.com/dotnet/aspnet:6.0ASbaseWORKDIR/appEXPOSE5000#一般情况下必须开放docker容器默认暴露80端口EXPOSE80#......
  • equals和hashCode详解
    equals和hashCode详解http://www.cnblogs.com/Qian123/p/5703507.html阅读目录equals()方法详解hashcode()方法详解Hashset、Hashmap、Hashtable与hashcode()和equa......
  • leetcode-1790-easy
    CheckifOneStringSwapCanMakeStringsEqualYouaregiventwostringss1ands2ofequallength.Astringswapisanoperationwhereyouchoosetwoindices......