Jul 22

asp.net 下制作一个简单的WebService

asp.net

 下面,我们看看如何建立和部署一个最简单的web服务 

建立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.现在我们建立了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.编译 

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; 
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> 

tags:asp.net  WebService  

to "asp.net 下制作一个简单的WebService"

Leave a Reply