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

如何在C#中webservice调用方法总结,第1张

 一、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()

}

}

}

首先 在客户端项目添加服务引用。 就是右键“引用”,添加服务引用,然后找到你webservice的名字和端口, 确定 就好了。

引用客户端项目会生成一个新的文件夹, Service Reference 就是服务依赖项。里面会有一个你引用的WebService的引用文件。 之后你所有的 *** 作都是通过调用这个文件来实现的。一般在引用的时候会更改名称 比如叫MyWebservice,

比如WebService公开了一个login方法;

客户端需要调用的时候,

var service = New MyWebservice.SoapClient()

service.Login()

这个Login就是你webservice中的登录方法,


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11675554.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-17
下一篇2023-05-17

发表评论

登录后才能评论

评论列表(0条)

    保存