如何在C#中webservice调用方法总结

 我来答
一骑当后
推荐于2017-11-27 · 知道合伙人数码行家
一骑当后
知道合伙人数码行家
采纳数:40298 获赞数:306441
网络、设备维护、电路、弱电检测。

向TA提问 私信TA
展开全部
 一、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();
  }
  }
  }
张涛我爱你year
2015-02-07 · TA获得超过1779个赞
知道小有建树答主
回答量:931
采纳率:0%
帮助的人:744万
展开全部
你的项目工程鼠标右键有个添加服务引用的功能,这个可以直接引用webservice,在客户端生成一个代理,接着你就可以直接像引用某个类的方式来使用webservice接口了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式