asp.net使用WSDL地址生成cs文件(代理类的自动生成)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/AdolphKevin/article/details/82988028

之所以写这篇文章,是因为现公司在与外部项目对接时使用WSDL对接。

然而VS2010之前的版本都能在VS工具栏内找到自带的wsdl工具的使用。而我恰好使用的vs2017,没有这个工具,并且对接的wsdl带了账号密码的验证。Google了老半天,也没找出需要带账号密码验证的wsdl如何生成代理类,直接把我给整蒙蔽了。

最后终于得以自己解决,在此做一个记录。

点击 vs菜单栏-->工具,选择外部工具。

在弹出框内的操作如下所示:

1:点击添加

2:标题--输入标题,标题内容可以自定义,下次使用时能找到即可

3:命令--输入wsdl.exe文件的路径。那么这个文件路径又在哪里呢?这个文件是出于.net formwork的安装目录下的。可在VS的.net formwork安装路径去搜索。我安装在C盘,所以路径是:

C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.7.2 Tools\x64\wsdl.exe

地址复制粘贴是没用的

实在不知道在哪,可以进入C盘后搜索文件wsdl.exe。

如下图所示:

有很多wsdl.exe文件,随便选取一个即可。

4:参数--输入:“/l:cs /out:”(输入双引号内的内容)(其中,“l”指的是语言cs,“out”指的是生成类的路径)

5:初始目录--点击▶选择“项目录”

6:勾选“使用输出窗口”以及“提示输入参数”

7:点击确定按钮

完成上述操作,重新打开vs的菜单栏-->工具,在列表里就能看到自己刚刚添加的工具了。

若wsdl地址的需要账号密码验证,需要先将文件保存至本地,再将保存到本地的文件后缀名由xml更改成wsdl。

若不保存至本地,直接填写在线地址,会出现错误405,访问未授权(因为wsdl.exe没有登陆验证的窗口弹出)

1、选中文件夹

2、点击工具-->找到刚刚输入的标题(WSDL代理类)

3、填写路径。对于不需要账号密码验证的wsdl地址可直接填写在线地址,也可为本地的wsdl文件地址。路径前要加一个空格

4、点击确定之后即可自动生成代理类

问题解决了,那认识一下什么是wsdl

wsdl(Web服务描述语言,Web Services Description Language)是为描述Web服务发布的XML格式。

其实归根结底还是Web Services

猜你喜欢

转载自blog.csdn.net/AdolphKevin/article/details/82988028