WSDL手动生成WebService代理类的方法

 

通常要手动生成WebService代理类需要把一句生成语句

 wsdl.exe /l:cs  /out:E:\ServiceActivator.cs http://192.168.128.62:8088/SoapProvisioningInterface/v1/services/ServiceActivator?wsdl拷贝到Visual Studio 2008 命令提示窗口中去执行.

或者先进入WSDL URL 将其保存为本地WSDL文件.

wsdl.exe /l:cs  /out:E:\ServiceActivator.cs E:\ServiceActivator?wsdl拷贝到Visual Studio 2008 命令提示窗口中去执行.

这里再介绍另一个办法。

     首先打开Visual Studio 2008,选择菜单"工具"-"外部工具"打开外部工具对话框,如图

,单击“添加”按钮添加新工具,然后在“标题”行中输入"WSDL生成代理类","命令"行中输入"C:\Program Files\Microsoft

SDKs\Windows\v6.0A\Bin\wsdl.exe"(wsdl.exe文件的路径),"参数"行中输入"/l:cs  /out:", 单击"初始目录"行右边的三角按钮选择"项目录",勾选"使用输出窗口"和"提示输入参数",然后确定保存。

     再打开菜单"工具"可以看到多了一个"WSDL生成代理类"菜单,这时先选定一个存放生成的代理类的文件夹(必须位于并且包含于当前解决方案中),然后单击"WSDL生成代理类"菜单,弹出如下对话框

,然后你只需在"/l:cs  /out:"后面空一格(必须空一格)再粘贴WebService文件的http地址如http://192.168.128.62:8088/SoapProvisioningInterface/v1/services/ServiceActivator?wsdl,单击"确定"看看发生了什么?是的,输出窗口会显示生成了一个类及其存放的位置,看看是不是你选定的文件夹,找到这个路径看看是不是有一个类,你会发现这个类跟上面使用命令行生成的类一模一样.

或者在"/l:cs  /out:"后面输入生成代理类文件的位置,空一格,输入WSDL URL或本地WSDL文件位置.

生成代理类后,你会看到代理类的构造函数:

     public ServiceActivator()
        {
            //this.Url = @"http://192.168.128.62:8088/SoapProvisioningInterface/v1/services/ServiceActivator";

            string url = System.Configuration.ConfigurationManager.AppSettings["URL"].ToString();

            this.Url = url;
        }

你可以设置Url(不能带?wsdl).

到此,代理类已生成,你可以用了.如果Webservice是有验证的,就要设置Credentials:

 using (ServiceActivator client = new ServiceActivator())
                {
                    NetworkCredential cred = new NetworkCredential(userName, password);
                    client.Credentials = cred;
                    //client.Credentials = System.Net.CredentialCache.DefaultCredentials;

                }

}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值