web service 是一个平台独立的、低耦合的、自包含的、基于编程的web的应用程序,可使用开发的XML(标准通用标记语言下的一个字表)标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。

web service技术能使得运行在不同机器上的不同应用无须借助附加的、专门的第三方软件或硬件就可互相交换数据或集成。依据webservice规范实施应用之间,无论他们所使用的语言,平台或内部协议是什么,都可以互相交换数据。webservice是自描述、自包含的可用网络模块、可执行具体业务功能。webservice也容易部署,因为他们基于一些常规的产业标准以及已有的一些技术,诸如标准通用标记语言下的子集XML/HTTP.webservice减少了应用接口的花费,webservice为整个企业甚至多个组织之间的业务流程集成提供了一个通用机制。

1.创建一个webservice并调用

(1)打开vs2013,新建空项目webappservice,注意选择.NET Framework 的版本,这里选择.NET Framework4.5.

(2)右击项目webappservice,选择“添加新项 -> web -> web 服务”,命名“mywebservice.asmx”.

(3)在mywebservice1 类中默认会添加一个 Hello World 方法,我加一个方法。

 /// <summary>
/// 姓名+年龄
/// </summary>
/// <param name="name"></param>
/// <param name="age"></param>
/// <returns></returns>
[WebMethod]
public string people(string name, string age)
{
return "姓名:" + name + "年龄:" + age;
}

(4)直接在浏览器中浏览MyWebService1.asmx

(5)单机这个方法people,如下图

(6)直接调用,效果如图。

返回是一个XML文件,在项目开发中,我们一般不这样的调用,而是通过添加web引用的方式。

所以,在需要引用webservice的时候,需要将此服务运行起来。右击,“在浏览器中查看”,当然这web服务就在IIS Express里面了。

(7)右击项目webappService,选择“添加->新建项->web窗体”,命名WebForm1.aspx,并在里面添加内容:

       <div>
<table>
<tr>
<td>姓名</td>
<td>
<asp:TextBox ID="txtName" runat="server"></asp:TextBox></td>
</tr>
<tr>
<td>年龄</td>
<td>
<asp:TextBox ID="txtAge" runat="server"></asp:TextBox></td>
</tr>
<tr>
<td></td>
<td>
<asp:Button ID="btnAction" runat="server" Text="执行" />
</td>
</tr>
<tr>
<td>结果</td>
<td> <asp:TextBox ID="txtResult" runat="server"></asp:TextBox></td> </tr>
</table>
</div>
</form>

(8)在项目右击"添加服务引用",点击“发现”

当然,如果我们把web服务部署到IIS上,也可以直接在地址栏中输入web服务地址,然后单击“转到”按钮。

(9)webForm1后台代码:

 /// <summary>
/// 执行
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnAction_Click(object sender, EventArgs e)
{
ServiceReference1.MyWebService1SoapClient _client = new ServiceReference1.MyWebService1SoapClient();
txtResult.Text = _client.people(txtName.Text.Trim(), txtAge.Text.Trim());
}

(10)右击webForm1.aspx,在;浏览器中查看,运行结果如图,(注:不要关闭在浏览器中打开的http://localhost:50785/MyWebService1.asmx)

为了方便,这里直接在项目中运行MyWebService1.asmx此服务。一般在项目中,我们会把所有的web服务单独放到一个web站点,然后发布到服务器IIS上面。

分布式技术 webservice的更多相关文章

  1. 现有分布式技术(socket、.net remoting、asp.net webservice、WSE、ES)和wcf的比较及优势

    1:socket VS remoting 使用socket无疑是效率最高的.但是,在复杂的接口环境下,socket的开发效率也是最低的.故在兼顾开发效率的情况下,可以使用remoting来代替sock ...

  2. .Net 分布式技术比较

    内容转自于 http://www.mamicode.com/info-detail-585547.html .NET 分布式技术比较 1. MSMQ(Microsoft Message Queue) ...

  3. C#远程调用技术WebService修炼手册

    一.课程介绍 一位伟大的讲师曾经说过一句话:事物存在即合理!意思就是说:任何存在的事物都有其存在的原因,存在的一切事物都可以找到其存在的理由,我们应当把焦点放在因果关联的本质上.所以在本次分享课开课之 ...

  4. Zookeeper系列二:分布式架构详解、分布式技术详解、分布式事务

    一.分布式架构详解 1.分布式发展历程 1.1 单点集中式 特点:App.DB.FileServer都部署在一台机器上.并且访问请求量较少 1.2  应用服务和数据服务拆分  特点:App.DB.Fi ...

  5. C#远程调用技术WebService葵花宝典

    一.课程介绍 直接开门见山吧,在学习之前阿笨想问大家一句,关于WebService远程过程调用技术(RPC) 你真的会了吗?不要跟老夫扯什么WebService技术已经过时,如果你的内心有在偷偷告诉你 ...

  6. 搞懂分布式技术21:浅谈分布式消息技术 Kafka

    搞懂分布式技术21:浅谈分布式消息技术 Kafka 浅谈分布式消息技术 Kafka 本文主要介绍了这几部分内容: 1基本介绍和架构概览 2kafka事务传输的特点 3kafka的消息存储格式:topi ...

  7. 搞懂分布式技术28:微服务(Microservice)那点事

    搞懂分布式技术28:微服务(Microservice)那点事 微服务(Microservice)那点事 肥侠 2016-01-13 09:46:53 浏览58371 评论15 分布式系统与计算 微服务 ...

  8. 搞懂分布式技术19:使用RocketMQ事务消息解决分布式事务

    搞懂分布式技术19:使用RocketMQ事务消息解决分布式事务 初步认识RocketMQ的核心模块 rocketmq模块 rocketmq-broker:接受生产者发来的消息并存储(通过调用rocke ...

  9. 搞懂分布式技术11:分布式session解决方案与一致性hash

    搞懂分布式技术11:分布式session解决方案与一致性hash session一致性架构设计实践 原创: 58沈剑 架构师之路 2017-05-18 一.缘起 什么是session? 服务器为每个用 ...

随机推荐

  1. Java之美[从菜鸟到高手演变]之字符串

    一.String 1.String简介 初始化: 一般由String声明的字符串,长度是不可变的,这也是它与StringBuffer和StringBuilder最直观的一个区别.一般初始化方式:Str ...

  2. jQuery之获取checkbox选中的值

    <mce:script src="jquery.js" mce_src="jquery.js"></mce:script><!-- ...

  3. QChart 如何放大缩小?

    #if 0 //QChart 放大缩小 double z = 1.0; QPoint numDegrees = e->angleDelta()/8; double zi = qAbs(0.1*n ...

  4. RabbitMQ_消息队列基本使用_1

    什么叫消息队列 消息(Message)是指在应用间传送的数据.消息可以非常简单,比如只包含文本字符串,也可以更复杂,可能包含嵌入对象. 消息队列(Message Queue)是一种应用间的通信方式,消 ...

  5. wget: unable to resolve host address “http”

    [root@one ~]# wget www.baidu.com --2017-09-24 10:20:23-- http://www.baidu.com/ Resolving http... fai ...

  6. 一个Browser的HTTP请求(一)

    本文主要是分析一个简单的web服务器是如何工作的. 若有不恰当或不对之处,请指正! Tomcat和web服务器的关系 我们常说Tomcat是一个web容器,也常说用户通过浏览器向web服务器进行请求, ...

  7. POSIX相关概念

    POSIX 表示可移植操作系统接口(Portable Operating System Interface ,缩写为 POSIX),POSIX标准定义了操作系统应该为应用程序提供的接口标准,是IEEE ...

  8. 剑指offer 面试39题

    面试39题: 题目:数组中出现次数超过一半的数字 题:数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字.例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}.由于数字2在数组中 ...

  9. Web前端开发的基本要求和认识

    Web前端开发技术包括三个要素:HTML.CSS和JavaScript,但随着RIA的流行和普及,Flash/Flex.Silverlight.XML和服务器端语言也是前端开发工程师应该掌握的.Web ...

  10. Python学习进程(14)异常处理

        本节介绍Python进行异常处理的方式,异常处理机制可以帮助我们调试python程序.     (1)异常的简介:     异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行 ...