摘自: http://www.189works.com/article-94771-1.html
下面,我们看看如何建立和部署一个最简单的Web服务,通过C# Webservice实例的一个简单实例,了解如何使用C#创建Webservice。
建立Web服务
1.在wwwroot目录下建立一个叫做Webservice的目录。
2.建立下面这样一个文件:
- 〈%@ WebService Language="c#" Class="AddNumbers"%〉
- using System;
- using System.Web.Services;
- public class AddNumbers : WebService
- {
- [WebMethod]
- publicintAdd(int a, int b){
- intsum;
- sum = a + b;
- returnsum;
- }
- }
3.将这个文件保存为AddService.asmx(asmx是扩展名),保存到Webservice的目录中
4.现在我们建立了Web服务,已经准备好客户端使用
5.现在,你可以用下面的URL访问这个Web服务:
http://IP地址/Webservice/Addservice.asmx/Add?a=10&b=5
结果将以XML格式返回。
在客户机上部署这个服务
1.在命令行输入:
WSDL http://IP地址/WebService/MathService.asmx /n:NameSp /out:FileName.cs
这个操作将建立一个称为FileName.cs的文件
说明:WSDL 指的是WebServices Description Language ,这个程序在Program Files\Microsoft.NET\FrameworkSDK\Bin 目录中。
NameSp是我们设置的名字空间的名字,将在后面部署这个服务的客户端的实现代码中使用到。
2.编译C# Webservice实例
CSC /t:library /r:system.web.dll /r:system.xml.dll FileName.cs
上述命令将生成一个dll文件,名字就是上面的asmx文件中的公共类的名字,在我们的例子中,就是:AddNumbers.dll
3.将生成的dll文件放到部署机的wwwroot\bin目录中。
在部署机的asp/aspx 中调用这个Web服务
- 〈%@ import Namespace = "NameSp" % 〉
- 〈script language = "c#" runat = "server" 〉
- public void Page_Load(object o, EventArgs e){
- int x = 10;
- int y = 5;
- intsum;
- //Instantiating the public class of the webservice
- AddNumbers AN = new AddNumbers();
- sum = AN.Add(x,y);
- string str = sum.ToString();
- response.writeline(str);
- }
- 〈/script 〉
至此,我们就完成了一个C# Webservice实例。