本文通过一个实例讲解了C# WebService的编程方法。麻雀虽小,五脏俱全,这个实例非常能说明问题。
1、建立Web服务
(1)在wwwroot目录下建立一个叫做Webservice的目录。
(2)建立下面这样一个文件:
<%@ WebService Language="c#" Class="AddNumbers"%>
using System;
using System.Web.Services;
public class AddNumbers : WebService
{
[WebMethod]
public int Add(int a, int b)
{
int sum;
sum = a + b;
return sum;
}
}
(3)将这个文件保存为AddService.asmx(asmx是扩展名),保存到Webservice的目录中
(4)已经准备好客户端使用
(5)用下面的URL访问这个Web服务:
http://IP地址/Webservice/Addservice.asmx/Add?a=10&b=5
结果将以XML格式返回。
2、在客户机上部署这个服务
(1)在ming令行输入:
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
上述ming令将生成一个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;
int sum; //Instantiating the public class of the webservice
AddNumbers AN = new AddNumbers();
sum = AN.Add(x,y);
string str = sum.ToString();
response.writeline(str);
}
</script>
这样,一个简单的WEB Service服务实例就完成了。
本文来源于翔宇亭IT乐园 http://www.biye5u.com/ , 原文地址:http://www.biye5u.com/article/Csharp/webservice/2011/3869.html