.net实现webservice简单实例分享
WebService:跨语言、跨平台的交互桥梁
在面向服务的编程(SOA)架构中,WebService扮演着重要的角色。它是一种不依赖于特定语言和平台的交互方式,通过网络应用间的HTTP协议实现不同语言间的相互调用。WebService的主要作用在于数据交换和提供服务接口,其优点包括可跨平台操作、部署简便、调用方便以及无需额外客户端支持。
下面,我们将通过一个简单的实例,来展示如何创建一个WebService服务。
一、创建WebService服务
1. 我们需要创建一个普通的Asp.Net Web应用程序,并将其命名为WebServiceDemo。
2. 在这个Web程序中,我们需要添加一个WebService服务文件,名为TestService.asmx。具体的操作步骤如图所示。
3. 接下来,我们为TestService.asmx编写服务代码。这个服务包含两个方法:HelloWorld和Add。HelloWorld方法返回一个简单的“Hello World”字符串,而Add方法则接受两个整数参数,并返回它们的和。
服务代码示例:
```csharp
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
namespace WebService
{
///
/// TestService 的摘要说明
///
[WebService(Namespace = "
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[SystemponentModel.ToolboxItem(false)]
public class TestService : System.Web.Services.WebService
{
[WebMethod]
public string HelloWorld()
{
return "Hello World";
}
[WebMethod]
public int Add(int i, int j)
{
return i + j;
}
}
}
```
4. 编译项目并运行。一旦运行成功,你将能够通过URL访问到WebService服务。例如,我的项目的运行URL是
二、后台调用方式
对于后台调用,首要步骤是添加服务引用。这一环节可以在新项目中进行,也可以直接在现有的WebServiceDemo项目里完成。此次,我们将在WebServiceDemo项目内进行操作。
步骤:
a) 在WebServiceDemo项目的引用上右击,选择“添加服务引用”。
b) 在弹出的对话框中,将地址填写为
c) 将命名空间更改为“TestServiceReference”,然后点击“测试”按钮进行检验。若一切正常,点击“确定”完成服务引用。
具体操作如图示:
接下来,我们进行后台调用。新建一个web.aspx页面,在后台键入以下代码进行测试:
```csharp
protected void Page_Load(object sender, EventArgs e)
{
//调用方法
TestServiceReference.TestServiceSoapClient testService = new TestServiceReference.TestServiceSoapClient();
int result = testService.Add(1, 2);
string hellowWorld = testService.HelloWorld();
Page.Response.Write("整型结果:" + result.ToString() + "。字符串结果:" + hellowWorld);
}
```
如果在页面上看到了结果,那么WebService的创建和引用就算成功了。
三、前台js调用方式
对于前台的js调用,我们首先需要打开TestService.asmx文件,并对其进行适当的修改以适应js的调用方式。下面是修改后的代码示例:
```csharp
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
namespace WebService
{
///
/// TestService 的摘要说明
///
[WebService(Namespace = "
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[SystemponentModel.ToolboxItem(false)]
一、WebService服务
在System.Web.Script.Services命名空间中,有一个名为TestService的类,它继承自System.Web.Services.WebService。这个类中包含一个方法GetWeekName,用于获取指定日期的周几名称。这个方法接受一个整数参数day,代表日期的天数。如果输入的day大于6,方法会返回“输入格式有误”的提示信息;否则,它会将输入的day转换为对应的DayOfWeek枚举值,并将其转换为字符串格式返回。
二、前端页面代码
以下是前端页面的JavaScript代码,需要引入jquery文件才能运行。在这段代码中,我们使用jQuery的ajax方法调用WebService服务的GetWeekName方法。我们通过POST方式向TestService.asmx/GetWeekName发送请求,并将数据以json格式传递。数据的格式为'{ day: 4}',表示查询的日期是星期四。请求成功后,会将返回的数据以弹窗的形式展示。
三、运行结果
为了使用我们刚写好的WebService服务,需要编译WebService所在的项目并运行前端页面。当看到弹窗弹出时,说明整个操作过程已经成功完成。你可以举一反三,尝试不同的日期输入,看看返回的结果是否符合预期。
四、总结与展望
通过本次操作,你已经掌握了从创建WebService服务到前端页面调用的整个过程。你可以进一步WebService的其他功能,或者尝试使用其他技术实现类似的功能。无论你选择哪条路,都希望你能在这个过程中不断学习和成长,开拓自己的技术视野。
微信营销
- .net实现webservice简单实例分享
- 浅谈javascript 函数内部属性
- 安倍死于大出血 枪伤触及心脏
- CI框架(CodeIgniter)操作redis的方法详解
- php实现约瑟夫问题的方法小结
- PHP封装的MSSql操作类完整实例
- asp下Response.Buffer提速
- 英文中的懦夫如何表达
- 黑料社张津瑜事件黑料
- vue实现多个元素或多个组件之间动画效果
- MSSQL Server 查询优化方法 整理
- 微信小程序 实现列表项滑动显示删除按钮的功能
- GridView分页代码简单万能实用
- 4月4日举行全国性哀悼活动
- PHP中的数组分页实现(非数据库)实例讲解
- 带密匙的php加密解密示例分享