如何调用已经发布的webservice,主要分为2个步骤(vs2010环境 C#)

发布webservice,使其处于服务状态。

创建一个asp.net程序(java等也可以),对webservice的方法进行调用。


发布webservice,可以参见

http://mingsuper.blog.51cto.com/8269088/1439419

创建asp.net

1)创建空的asp.net程序

2)建立测试用的页面,这里不过多叙述

3)增加对webservice的web 引用,在工程上点击右键。

4)在弹出的对话框中输入webservice的发布路径,点击go按钮。找到后,在下面的对话框中为这个引用起命名空间名。(这个名字在后续的操作中会被用到)

5)引入后是这样的

6)LoginService.wsdl是发布的webservice的描述文件

7)在asp.net进行调用过程中,直接通过命名空间名找到对应的webservice类,这里是

LoginServiceSoapClient(我发布的类名是LoginService 其自己加上了soapclient)。其中LoginServiceRef.UserInfo这个变量很有意思,它本身在asp.net工程中并没有被定义过,是在webservice的工程中被定义的,但在asp工程里也可以使用,而且属性方法都是存在的。

protectedvoidLoginBtn_Click(objectsender,EventArgse){stringloginResult;LoginServiceRef.LoginServiceSoapClientservice=newLoginServiceRef.LoginServiceSoapClient();LoginServiceRef.UserInfouserinfo=newLoginServiceRef.UserInfo();//UserInfouserInfo=newUserInfo();userinfo.UserName=UserName.Text;userinfo.Password=Password.Text;loginResult=service.CheckLoginUserInfo(userinfo);LoginResult.Text=loginResult;}


调用结果