.net asp.net 怎么调用WEB服务

一、WebService在cs后台程序中的调用
  A、通过命名空间和类名直接调用

  示例:

  WebService ws = new WebService();

  string s = ws.HelloWorld();

  B、通过添加WEB引用的方式调用,首先添加WEB引用,通过URL指向WEBSERVICE,

  指定WEB引用名,假设为KK;

  示例:

  kk.WebService n = new kk.WebService();

  string ss=n.HelloWorld();

  二、WebService在前台页面的JS 调用方法

  1、首先通过下面的方法把Webservice在前台引用进来


  <asp:ScriptManager runat="server">  
  <Services> 
  <asp:ServiceReference Path="WebService.asmx" InlineScript="True" /> 
  </Services> 
  </asp:ScriptManager> 


  2、然后就可以通过JS程序进行调用,示例如下:


  <script type="text/jscript">  
  function a() 
  { 
   WebService.HelloWorld(onresult); 
  } 
  //这里的onresult是回调函数 
  function onresult(result) 
  { 
   alert(result); 
  } 
  function b() 
  { 
   WebService.add(1,2,onreturn) 
  } 
  function onreturn(result) 
  { 
   alert(result); 
  } 
  //下面的'context'是上下文,可以通过回到函数通过重载的方式获得; 
  function c() 
  { 
   WebService.div(1,1,onresultC,onerror,'context'); 
  } 
  function onresultC(res,c) 
  { 
   alert(res); 
   alert(c); 
  } 
  //onerror是获得异常信息的回调函数,下面给出了获得异常信息的方法 
  function onerror(error) 
  { 
   var a=""; 
   a=String.format("获取服务器端异常的具体类型:{0}\t\n获取详细的异常描述信息:{1}\t\n获取造成异常的:{2}\t\n获取服务器端异常的堆栈 
   跟踪信息:{3}\t\n获取一个布尔值,表示异常是否是由于网络连接超时造成的{4}", 
   error.get_exceptionType(), 
   error.get_message(), 
   error.get_statusCode(), 
   error.get_stackTrace(), 
   error.get_timedOut()) 
   alert(a); 
  } 
  a(); 
  b(); 
  c(); 
  </script> 

 ----自写小例子---


web Service---:
[WebMethod]
public string HelloWorld() { return "Hello World,wwg"; }
[WebMethod]
public int AddWwg(int a,int b)
{
return a + b;
}
exe---
using CallWebService.localhost; //因为自己没有定义命名空间
namespace CallWebService
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Service serviceWwg = new Service();
int i1 = Int32.Parse(txt1.Text.ToString());
int i2 = Int32.Parse(txt2.Text.ToString());
int iResult = serviceWwg.AddWwg(i1, i2);
lb1.Text = iResult.ToString();
}
private void button2_Click(object sender, EventArgs e)
{
CallWebService.localhost.Service serviceWwg = new CallWebService.localhost.Service();
string strResult = serviceWwg.HelloWorld();
lb1.Text = strResult.ToString();
}
}
}


编辑器加载中...

转载于:https://www.cnblogs.com/zwkBlog/archive/2012/01/17/2324587.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值