如何调用已经发布的webservice,主要分为2个步骤(vs2010环境 C#)
发布webservice,使其处于服务状态。
创建一个asp.net程序(java等也可以),对webservice的方法进行调用。
-
发布webservice,可以参见
http://mingsuper.blog.51cto.com/8269088/1439419
-
创建asp.net
1)创建空的asp.net程序
3)增加对webservice的web 引用,在工程上点击右键。
4)在弹出的对话框中输入webservice的发布路径,点击go按钮。找到后,在下面的对话框中为这个引用起命名空间名。(这个名字在后续的操作中会被用到)
5)引入后是这样的
6)LoginService.wsdl是发布的webservice的描述文件
7)在asp.net进行调用过程中,直接通过命名空间名找到对应的webservice类,这里是
LoginServiceSoapClient(我发布的类名是LoginService 其自己加上了soapclient)。其中LoginServiceRef.UserInfo这个变量很有意思,它本身在asp.net工程中并没有被定义过,是在webservice的工程中被定义的,但在asp工程里也可以使用,而且属性方法都是存在的。
protected void LoginBtn_Click(object sender, EventArgs e) { string loginResult; LoginServiceRef.LoginServiceSoapClient service = new LoginServiceRef.LoginServiceSoapClient(); LoginServiceRef.UserInfo userinfo = new LoginServiceRef.UserInfo(); //UserInfo userInfo = new UserInfo(); userinfo.UserName = UserName.Text; userinfo.Password = Password.Text; loginResult = service.CheckLoginUserInfo(userinfo); LoginResult.Text = loginResult; }
调用结果