ASP.NET WebService
一、WebService:WebService是以独立于平台的方式,通过标准的Web协议,可以由程序访问的应用程序逻辑单元。
(1)应用程序逻辑单元:web服务包括一些应用程序逻辑单元或者代码。这些代码可以完成运算任务,可以完成数据库查询,可以完成计算机程序能够完成的任何工作。
(2)可由程序访问:当前大多是web站点都是通过浏览器由人工访问的,web服务可以由计算机程序来访问。
(3)标准的we协议:Web服务的所有协议都是基于一组标准的Web协议,如HTTP、XML、SOAP、WSDl、UDDI等
(4)平台独立性:web服务可以在任何平台上实现。因为标准协议不是由单个供应商专用的,它由大多数主要供应商支持。
SOAP(Simple Object Access Protocol,简单对象访问协议)协议:是用于交换XML编码信息的轻量级协议,SOAP协议是HTTP和XML协议的组合。
WSDL(Web Service Description Language,Web服务描述语言)是用XML文档来描述Web服务的标准,是Web服务的接口定义语言。
二、创建ASP.NET WEB服务
建立Web服务就是把一些信息或逻辑对其他计算机和客户公开,进一步说,就是从支持SOAP通信的类中建立一个或多个方法。
创建Web服务的步骤:(VS2008)
首先,新建一个项目。选择文件-------->新建--------->项目----〉ASP.NET Web 服务应用程序,确定后,创建成功。
其次,创建好后,会生成Service1.asmx,其代码隐藏文件为Service1.asmx.cs。Web服务文件都使用扩展名.asmx。
在其中编写要调用的服务方法;例如:
namespace WebService1 { /// <summary> /// Service1 的摘要说明 /// </summary> [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolboxItem(false)] // 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消注释以下行。 // [System.Web.Script.Services.ScriptService] public class Service1 : System.Web.Services.WebService { [WebMethod] public string HelloWorld() { return "Hello World"; } } }
第三,写完服务方法后编译生成dll类库。
调用:
第一:创建应用网站:
第二:引用Web服务的dll类库;
第三:客户端调用
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using WebService1; public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { Service1 service = new Service1(); Label1.Text = service.HelloWorld(); } }