1.创建一个最简单的Web Service
(1) 新建-项目-ASP.NET空WEB应用程序
(2)添加新项-WEB服务
默认会添加一个HelloWorld方法:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
using
System;
using
System.Collections.Generic;
using
System.Linq;
using
System.Web;
using
System.Web.Services;
namespace
MyNetWebService
{ /// <summary>
/// MyWebService 的摘要说明
/// </summary>
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem( false )]
// 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消注释以下行。
// [System.Web.Script.Services.ScriptService]
public
class MyWebService : System.Web.Services.WebService
{
[WebMethod]
public
string HelloWorld()
{
return
"Hello World" ;
}
}
} |
右击在浏览器中查看:
可以接着点击HelloWorld方法->点击调用。
2.WebService 调用
2.1调用webserivice 最简单的方法就是在 "引用" 那里点击右键,然后选择"引用web服务",再输入服务地址。
确定后,会生成一个app.config 里面就会自动生成了一些配置信息。
用ASP.NET调用Web Service
新建网站后 右击添加新项 发现VS2014没有”添加WEB引用“项,几经周折发现在”添加服务引用“—>”高级“—>”添加WEB引用“
在URL中填入,前面写好的WebService运行后浏览器上面显示的地址,点击“前往”按钮,如上图,就会显示出所引用的WebService中可以调用的方法,然后点击“添加引用”,就将webservice引用到了当前的工程里面 ,如下图,解决方案中会出现引进来的WebService文件
在此练习调用webservice的HelloWorld方法:在前台添加两个控件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
<%@ Page Language= "C#"
AutoEventWireup= "true"
CodeFile= "CallWebService.aspx.cs"
Inherits= "CallWebService"
%>
<!DOCTYPE html> <head runat= "server" >
<meta http-equiv= "Content-Type"
content= "text/html; charset=utf-8" />
<title> "引用web服务" 方式调用WebService</title>
</head> <body> <form id= "form1"
runat= "server" >
<div>
<asp:Label ID= "show"
runat= "server"
></asp:Label>
<asp:Button ID= "btn"
runat= "server"
Text= "Show"
OnClick= "btn_Click"
/>
</div>
</form>
</body> </html> |
在后台写调用WebService的代码,调用之前和使用其他的对象一样,先要实例化。运行后看到显示效果,而整个过程并不是在本地进行的,是在Web服务端进行计算然后将结果通过XML返还还给调用方法的,所以,在运行该程序的时候,WebService程序还必须启动,否则会报无法连接远程服务器的异常。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
using
System;
using
System.Collections.Generic;
using
System.Linq;
using
System.Web;
using
System.Web.UI;
using
System.Web.UI.WebControls;
public
partial class CallWebService : System.Web.UI.Page
{ protected
void Page_Load( object
sender, EventArgs e)
{
}
protected
void btn_Click( object
sender, EventArgs e)
{
//实例化WebService对象
NetWebService.MyWebService webservice = new
NetWebService.MyWebService();
//通过实例化的webservice对象来调用Webservice暴露的方法
show.Text = webservice.HelloWorld();
}
} |